123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112 |
- /**********************************************************************/
- /* ____ ____ */
- /* / /\/ / */
- /* /___/ \ / */
- /* \ \ \/ */
- /* \ \ Copyright (c) 2003-2020 Xilinx, Inc. */
- /* / / All Right Reserved. */
- /* /---/ /\ */
- /* \ \ / \ */
- /* \___\/\___\ */
- /**********************************************************************/
-
- #if defined(_WIN32)
- #include "stdio.h"
- #define IKI_DLLESPEC __declspec(dllimport)
- #else
- #define IKI_DLLESPEC
- #endif
- #include "iki.h"
- #include <string.h>
- #include <math.h>
- #ifdef __GNUC__
- #include <stdlib.h>
- #else
- #include <malloc.h>
- #define alloca _alloca
- #endif
- /**********************************************************************/
- /* ____ ____ */
- /* / /\/ / */
- /* /___/ \ / */
- /* \ \ \/ */
- /* \ \ Copyright (c) 2003-2020 Xilinx, Inc. */
- /* / / All Right Reserved. */
- /* /---/ /\ */
- /* \ \ / \ */
- /* \___\/\___\ */
- /**********************************************************************/
-
- #if defined(_WIN32)
- #include "stdio.h"
- #define IKI_DLLESPEC __declspec(dllimport)
- #else
- #define IKI_DLLESPEC
- #endif
- #include "iki.h"
- #include <string.h>
- #include <math.h>
- #ifdef __GNUC__
- #include <stdlib.h>
- #else
- #include <malloc.h>
- #define alloca _alloca
- #endif
- typedef void (*funcp)(char *, char *);
- extern int main(int, char**);
- IKI_DLLESPEC extern void execute_13(char*, char *);
- IKI_DLLESPEC extern void execute_14(char*, char *);
- IKI_DLLESPEC extern void execute_10(char*, char *);
- IKI_DLLESPEC extern void execute_12(char*, char *);
- IKI_DLLESPEC extern void transaction_0(char*, char*, unsigned, unsigned, unsigned);
- IKI_DLLESPEC extern void transaction_1(char*, char*, unsigned, unsigned, unsigned);
- IKI_DLLESPEC extern void vhdl_transfunc_eventcallback(char*, char*, unsigned, unsigned, unsigned, char *);
- funcp funcTab[7] = {(funcp)execute_13, (funcp)execute_14, (funcp)execute_10, (funcp)execute_12, (funcp)transaction_0, (funcp)transaction_1, (funcp)vhdl_transfunc_eventcallback};
- const int NumRelocateId= 7;
-
- void relocate(char *dp)
- {
- iki_relocate(dp, "xsim.dir/pwm_test_db_behav/xsim.reloc", (void **)funcTab, 7);
- iki_vhdl_file_variable_register(dp + 6408);
- iki_vhdl_file_variable_register(dp + 6464);
-
-
- /*Populate the transaction function pointer field in the whole net structure */
- }
-
- void sensitize(char *dp)
- {
- iki_sensitize(dp, "xsim.dir/pwm_test_db_behav/xsim.reloc");
- }
-
- void simulate(char *dp)
- {
- iki_schedule_processes_at_time_zero(dp, "xsim.dir/pwm_test_db_behav/xsim.reloc");
- // Initialize Verilog nets in mixed simulation, for the cases when the value at time 0 should be propagated from the mixed language Vhdl net
- iki_execute_processes();
-
- // Schedule resolution functions for the multiply driven Verilog nets that have strength
- // Schedule transaction functions for the singly driven Verilog nets that have strength
-
- }
- #include "iki_bridge.h"
- void relocate(char *);
-
- void sensitize(char *);
-
- void simulate(char *);
-
- extern SYSTEMCLIB_IMP_DLLSPEC void local_register_implicit_channel(int, char*);
- extern SYSTEMCLIB_IMP_DLLSPEC int xsim_argc_copy ;
- extern SYSTEMCLIB_IMP_DLLSPEC char** xsim_argv_copy ;
-
- int main(int argc, char **argv)
- {
- iki_heap_initialize("ms", "isimmm", 0, 2147483648) ;
- iki_set_sv_type_file_path_name("xsim.dir/pwm_test_db_behav/xsim.svtype");
- iki_set_crvs_dump_file_path_name("xsim.dir/pwm_test_db_behav/xsim.crvsdump");
- void* design_handle = iki_create_design("xsim.dir/pwm_test_db_behav/xsim.mem", (void *)relocate, (void *)sensitize, (void *)simulate, (void*)0, 0, isimBridge_getWdbWriter(), 0, argc, argv);
- iki_set_rc_trial_count(100);
- (void) design_handle;
- return iki_simulate_design();
- }
|