Как присвоить значение времени симуляции в системном verilog

Это может помочь вам ...

private void loggedInToMainPage(final String emailName, final String passwordName) {

    String tag_string_req = "req_login";
    StringRequest stringRequest = new StringRequest(Request.Method.POST, "http://localhost/index", new Response.Listener<String>() {
        @Override
        public void onResponse(String response) {
            Log.d(TAG, "Login Response: " + response.toString());
            try {
                JSONObject jsonObject = new JSONObject(response);
                Boolean error = jsonObject.getBoolean("error");
                if (!error) {

                    String uid = jsonObject.getString("uid");
                    JSONObject user = jsonObject.getJSONObject("user");
                    String email = user.getString("email");
                    String password = user.getString("password");


                    session.setLogin(true);
                    Intent intent = new Intent(getApplicationContext(), MainActivity.class);
                    startActivity(intent);
                    finish();
                    Toast.makeText(getApplicationContext(), "its ok", Toast.LENGTH_SHORT).show();
                }
            } catch (JSONException e) {
                e.printStackTrace();
            }

        }
    }, new Response.ErrorListener() {
        @Override
        public void onErrorResponse(VolleyError volleyError) {
            System.out.println("volley Error .................");
        }
    }) {
        @Override
        protected Map<String, String> getParams() throws AuthFailureError {
            Map<String, String> params = new HashMap<String, String>();
            params.put("tag", "login");
            params.put("email", emailName);
            params.put("password", passwordName);
            return params;
        }
    };


    MyApplication.getInstance().addToRequestQueue(stringRequest,tag_string_req);
}
0
задан user3697021 23 February 2019 в 20:05
поделиться

1 ответ

На языке событий, управляемых событиями. например, SystemVerilog, время является глобальным значением, разделяемым всеми процессами. Вы не можете установить его - вы можете наблюдать только его текущее значение.

Как работает управляемое событиями моделирование, оно работает в цикле, обрабатывая очередь событий в текущий момент времени, пока очередь не станет пустой. Только тогда он переходит к следующему запланированному событию в будущем. Так что вы можете сделать так, чтобы блок процесса ожидал какое-то время в будущем.

SystemVerilog не предоставляет способа планирования чего-либо на определенное время, но если вы наблюдаете текущее время, вы можете вычесть это время из времени в будущем, которое вы хотите, - блок для этого количества времени.

Поскольку ваши транзакции не перекрываются, вы можете прочитать файл по одной строке за один раз и подождать указанное время. Вы читаете первую строку в момент времени 0 и ждете 1- $ в реальном времени. Затем выполните транзакцию. Когда это будет сделано, вы читаете вторую строку и ждете 5- $ реального времени. Это можно сделать в цикле, пока не достигнет конца файла.

0
ответ дан dave_59 23 February 2019 в 20:05
поделиться
Другие вопросы по тегам:

Похожие вопросы: