Commit Graph

48 Commits

Author SHA1 Message Date
Alex Forencich
ce907ffbb9 Print out signal summary 2021-04-12 19:29:41 -07:00
Alex Forencich
95e2d5800d Store parameters 2021-04-12 19:27:38 -07:00
Alex Forencich
82853b31ff Rename byte_width to byte_lanes 2021-04-12 15:08:30 -07:00
Alex Forencich
c060f6c963 Transmit data without using pop 2021-04-12 13:53:28 -07:00
Alex Forencich
d1d7313b98 Add tag context manager to AXI master to reuse per-ID processing components 2021-04-08 19:03:46 -07:00
Alex Forencich
b5b6df84fe Improve burst handling in AXI master 2021-03-25 18:03:36 -07:00
Alex Forencich
77a40bdc8f Limit channel queue depth 2021-03-24 17:55:07 -07:00
Alex Forencich
f991096272 Separate processing coroutines for each ID 2021-03-24 17:07:16 -07:00
Alex Forencich
9e28bd7fbb Revert back to cocotb.fork 2021-03-24 16:20:08 -07:00
Alex Forencich
a285f008ca Refactor reset handling code 2021-03-22 22:02:53 -07:00
Alex Forencich
c677ab245c Reset more internal state 2021-03-22 22:02:06 -07:00
Alex Forencich
344ec8d4ce Return event object from init_read and init_write; remove get_write_resp and get_read_data 2021-03-22 21:21:34 -07:00
Alex Forencich
7fb8c4e28b Reset processing on assert edge only to permit operations to be queued while reset is asserted 2021-03-21 12:13:19 -07:00
Alex Forencich
156fada616 Store commands currently being processed so they can be released when the processing coroutines are killed 2021-03-21 12:04:30 -07:00
Alex Forencich
d88ba7caf3 Warn when operations are dropped during reset 2021-03-21 11:41:25 -07:00
Alex Forencich
6c66776518 Use start_soon instead of fork 2021-03-21 11:40:25 -07:00
Alex Forencich
f19ca9f651 Use cocotb async queues 2021-03-17 17:34:26 -07:00
Alex Forencich
35ed1472d6 Add reset_active_level parameters 2021-03-06 17:30:05 -08:00
Alex Forencich
69717c1698 Add AXI bus objects 2021-03-06 16:26:51 -08:00
Alex Forencich
97abb032d8 Use send instead of drive 2021-01-07 20:07:02 -08:00
Alex Forencich
2e79ef233f Rework resets 2021-01-03 12:39:25 -08:00
Alex Forencich
ecb2f5ae81 Add idle event 2020-12-24 19:25:26 -08:00
Alex Forencich
fcf6374c3c Remove inherit from object 2020-12-24 14:44:42 -08:00
Alex Forencich
cd272b2a59 Convert send/recv to blocking, add nonblocking send_nowait/recv_nowait 2020-12-18 15:33:23 -08:00
Alex Forencich
01212e37cd Minor refactoring, remove extra conversion 2020-12-17 00:27:17 -08:00
Alex Forencich
2451921923 Replace SimLog with logger 2020-12-10 02:20:14 -08:00
Alex Forencich
22b10f2dd8 Preload ID queue list 2020-12-04 12:39:25 -08:00
Alex Forencich
4b5b62419b Add missing parameters 2020-12-03 19:34:03 -08:00
Alex Forencich
a48da65f55 Replace token with event 2020-12-02 16:07:25 -08:00
Alex Forencich
4546900651 Add byteorder to word wrappers 2020-12-01 22:51:11 -08:00
Alex Forencich
0bbad73760 Sanity check on read length 2020-12-01 18:01:34 -08:00
Alex Forencich
b3c1e1d557 Implement wuser 2020-12-01 17:58:50 -08:00
Alex Forencich
0f93292f6e Roll wait_for_token into wait 2020-12-01 17:36:30 -08:00
Alex Forencich
ea2ee23e0f Add awid/arid parameters to control ID signal, rework ID assignment and tracking 2020-11-29 14:10:56 -08:00
Alex Forencich
5c94ed2cca Improve parameter validation 2020-11-29 14:02:48 -08:00
Alex Forencich
1d5ec5e2b6 Move size parameter validation 2020-11-28 16:50:47 -08:00
Alex Forencich
f12ce696be Add helper objects for AXI masters 2020-11-27 02:08:23 -08:00
Alex Forencich
e5076e700c Log model configuration information 2020-11-26 21:15:37 -08:00
Alex Forencich
7f68f5e73f Bring out max_burst_len as a parameter in AXI master model 2020-11-26 21:01:40 -08:00
Alex Forencich
81f8906548 Clean up and lint removal 2020-11-26 19:51:24 -08:00
Alex Forencich
96feba1016 Print version information in debug output 2020-11-22 23:09:20 -08:00
Alex Forencich
02de500b1e Add word access methods to AXI master models 2020-11-12 19:14:31 -08:00
Alex Forencich
fff9781181 Strip unnecessary fields for blocking operations 2020-11-12 19:07:15 -08:00
Alex Forencich
900d734853 No FIFO on AW/AR channels 2020-10-26 23:47:19 -07:00
Alex Forencich
5478f1479a More efficient waiting 2020-10-22 23:27:41 -07:00
Alex Forencich
db5c34816f Use new channel objects 2020-10-22 11:31:06 -07:00
Alex Forencich
7851565206 Remove extraneous checks 2020-10-21 15:44:42 -07:00
Alex Forencich
35ff3fa3b6 Initial commit 2020-10-19 14:54:41 -07:00