axi_tdl 0.2.0 → 0.2.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (41) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/gem-push.yml +46 -28
  3. data/.github/workflows/ruby.yml +1 -1
  4. data/.gitignore +2 -1
  5. data/.travis.yml +1 -0
  6. data/axi_tdl.gemspec +1 -1
  7. data/lib/axi/AXI4/axi4_long_to_axi4_wide_B1.sv +5 -3
  8. data/lib/axi/AXI4/long_axis_to_axi4_wr.rb +1 -0
  9. data/lib/axi/AXI4/odata_pool_axi4_A4.sv +173 -0
  10. data/lib/axi/AXI4/packet_fifo/axi4_packet_fifo_B1.sv +66 -0
  11. data/lib/axi/AXI4/packet_fifo/axi4_rd_packet_fifo_A1.sv +260 -0
  12. data/lib/axi/AXI4/packet_fifo/axi4_wr_packet_fifo_A1.sv +192 -0
  13. data/lib/axi/AXI4/wide_axis_to_axi4_wr.sv +1 -1
  14. data/lib/axi/AXI_stream/axi_stream_split_channel.sv +21 -21
  15. data/lib/axi/AXI_stream/axi_streams_combin.sv +2 -1
  16. data/lib/axi/AXI_stream/axi_streams_combin_A1.sv +2 -1
  17. data/lib/axi/AXI_stream/axi_streams_scaler.sv +2 -1
  18. data/lib/axi/AXI_stream/axi_streams_scaler_A1.sv +2 -1
  19. data/lib/axi/AXI_stream/axis_combin_with_fifo.sv +2 -1
  20. data/lib/axi/AXI_stream/axis_head_cut_verc.rb +2 -0
  21. data/lib/axi/AXI_stream/gen_big_field_table.sv +3 -2
  22. data/lib/axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_B1F.sv +129 -0
  23. data/lib/axi/AXI_stream/parse_big_field_table_main.sv +101 -0
  24. data/lib/axi/AXI_stream/parse_big_field_table_mirror.sv +94 -0
  25. data/lib/axi/axi4_to_xilinx_ddr_native/axi4_to_native_for_ddr_ip_C2.sv +75 -0
  26. data/lib/axi/axi4_to_xilinx_ddr_native/ddr_native_fifo_A2.sv +206 -0
  27. data/lib/axi/axi4_to_xilinx_ddr_native/ddr_native_fifo_B1.sv +297 -0
  28. data/lib/axi/axi4_to_xilinx_ddr_native/model_ddr_ip_app.sv +2 -2
  29. data/lib/axi/common/common_ram_wrapper.sv +1 -1
  30. data/lib/axi/data_interface/data_inf_c/data_c_pipe_sync_seam.sv +11 -11
  31. data/lib/axi/data_interface/data_inf_c/data_c_scaler.sv +2 -1
  32. data/lib/axi/data_interface/data_inf_c/data_c_scaler_A1.sv +2 -1
  33. data/lib/axi/data_interface/data_streams_combin.sv +2 -1
  34. data/lib/axi/data_interface/data_streams_combin_A1.sv +2 -1
  35. data/lib/axi/data_interface/data_streams_scaler.sv +2 -1
  36. data/lib/axi_tdl/version.rb +1 -1
  37. data/lib/tdl/axi4/axi4_interconnect_verb.rb +5 -1
  38. data/lib/tdl/examples/2_hdl_class/tmp/test_vcs_string.sv +1 -1
  39. data/lib/tdl/examples/8_top_module/test_top.sv +1 -1
  40. data/lib/tdl/rebuild_ele/ele_base.rb +14 -0
  41. metadata +13 -3
@@ -1,7 +1,8 @@
1
1
  /**********************************************
2
2
  _______________________________________
3
3
  ___________ Cook Darwin __________
4
- _______________________________________descript:
4
+ _______________________________________
5
+ descript:
5
6
  author : Cook.Darwin
6
7
  Version: VERA.0.0
7
8
  build from data_streams_scaler VA.0.1
@@ -1,7 +1,8 @@
1
1
  /**********************************************
2
2
  _______________________________________
3
3
  ___________ Cook Darwin __________
4
- _______________________________________descript:
4
+ _______________________________________
5
+ descript:
5
6
  author : Cook.Darwin
6
7
  Version: VERA.0.1
7
8
  Version: VERA.0.2 2018-4-12 15:42:15
@@ -1,3 +1,3 @@
1
1
  module AxiTdl
2
- VERSION = "0.2.0"
2
+ VERSION = "0.2.4"
3
3
  end
@@ -228,7 +228,7 @@ class Axi4
228
228
  curr_quanti_len = e.dsize.real_data * (2**e.lsize.real_data)
229
229
  if(curr_quanti_len > root_quanti_len )
230
230
  # if(true )
231
- new_master = self.copy(mode:e.mode,idsize:e.idsize+4)
231
+ new_master = self.copy(mode:e.mode,idsize:e.idsize+4,name: "#{self.name}_long_slim_to_wide_#{globle_random_name_flag('axi_intc')}" )
232
232
  new_master.mode = e.mode
233
233
 
234
234
  require_hdl 'axi4_long_to_axi4_wide_B1.sv'
@@ -236,6 +236,8 @@ class Axi4
236
236
  TopModule.contain_hdl 'axi4_packet_fifo_verb.sv'
237
237
  TopModule.contain_hdl 'axi4_data_convert_verb.sv'
238
238
  TopModule.contain_hdl 'data_c_pipe_force_vld.sv'
239
+ TopModule.contain_hdl 'axi4_packet_fifo_B1.sv','axi4_rd_packet_fifo_A1.sv','axi4_wr_packet_fifo_A1.sv','axi_stream_packet_fifo_B1F.sv'
240
+
239
241
 
240
242
  belong_to_module.Instance(:axi4_long_to_axi4_wide_B1,"axi4_long_to_axi4_wide_B1_#{index}_inst") do |h|
241
243
  h[:PARTITION] = "ON"
@@ -254,6 +256,8 @@ class Axi4
254
256
  TopModule.contain_hdl 'axi4_packet_fifo_verb.sv'
255
257
  TopModule.contain_hdl 'axi4_data_convert_verb.sv'
256
258
  TopModule.contain_hdl 'data_c_pipe_force_vld.sv'
259
+ TopModule.contain_hdl 'axi4_packet_fifo_B1.sv','axi4_rd_packet_fifo_A1.sv','axi4_wr_packet_fifo_A1.sv','axi_stream_packet_fifo_B1F.sv'
260
+
257
261
  # puts "#{e.dsize} == #{self.dsize} #{e.dsize != self.dsize} #{e.dsize.class}"
258
262
  new_master = self.copy(name: "#{e.name}_renew_dir",mode:e.mode,idsize:e.idsize)
259
263
  # new_master.axi4_data_convert(up_stream: e)
@@ -5,7 +5,7 @@ _______________________________________
5
5
  descript:
6
6
  author : Cook.Darwin
7
7
  Version: VERA.0.0
8
- created: 2022-07-10 11:21:57 +0800
8
+ created: 2023-02-17 21:27:54 +0800
9
9
  madified:
10
10
  ***********************************************/
11
11
  `timescale 1ns/1ps
@@ -5,7 +5,7 @@ _______________________________________
5
5
  descript:
6
6
  author : Cook.Darwin
7
7
  Version: VERA.0.0
8
- created: 2022-07-10 11:21:37 +0800
8
+ created: 2023-02-17 21:27:53 +0800
9
9
  madified:
10
10
  ***********************************************/
11
11
  `timescale 1ns/1ps
@@ -668,6 +668,20 @@ module TdlSpace
668
668
  end
669
669
  end
670
670
 
671
+ ## Monkey 布丁,
672
+ def force_name_copy(nstr)
673
+
674
+ if nstr.to_s.eql?(inst_name.to_s)
675
+ @copy_id ||= 0
676
+ str = "#{nstr.to_s}_copy_#{@copy_id}"
677
+ @copy_id += 1
678
+ str
679
+ else
680
+ nstr.to_s
681
+ end
682
+
683
+ end
684
+
671
685
  def use_which_freq_when_copy(argv_clock,argv_origin)
672
686
  if argv_clock == @clock && @clock
673
687
  if @clock.respond_to? :freqM
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: axi_tdl
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.4
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cook.Darwin
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2022-07-17 00:00:00.000000000 Z
11
+ date: 2023-02-18 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -131,10 +131,14 @@ files:
131
131
  - lib/axi/AXI4/odata_pool_axi4_A1.sv
132
132
  - lib/axi/AXI4/odata_pool_axi4_A2.sv
133
133
  - lib/axi/AXI4/odata_pool_axi4_A3.sv
134
+ - lib/axi/AXI4/odata_pool_axi4_A4.sv
134
135
  - lib/axi/AXI4/packet_fifo/axi4_packet_fifo.sv
136
+ - lib/axi/AXI4/packet_fifo/axi4_packet_fifo_B1.sv
135
137
  - lib/axi/AXI4/packet_fifo/axi4_packet_fifo_verb.sv
136
138
  - lib/axi/AXI4/packet_fifo/axi4_rd_packet_fifo.sv
139
+ - lib/axi/AXI4/packet_fifo/axi4_rd_packet_fifo_A1.sv
137
140
  - lib/axi/AXI4/packet_fifo/axi4_wr_packet_fifo.sv
141
+ - lib/axi/AXI4/packet_fifo/axi4_wr_packet_fifo_A1.sv
138
142
  - lib/axi/AXI4/packet_merge/axi4_merge.sv
139
143
  - lib/axi/AXI4/packet_merge/axi4_merge_rd.sv
140
144
  - lib/axi/AXI4/packet_merge/axi4_merge_wr.sv
@@ -312,6 +316,7 @@ files:
312
316
  - lib/axi/AXI_stream/packet_fifo/axi_stream_packet_fifo.sv
313
317
  - lib/axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_B1.sv
314
318
  - lib/axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_B1E.sv
319
+ - lib/axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_B1F.sv
315
320
  - lib/axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_verb.sv
316
321
  - lib/axi/AXI_stream/packet_fifo/axi_stream_packet_fifo_with_info.sv
317
322
  - lib/axi/AXI_stream/packet_fifo/axi_stream_packet_long_fifo.sv
@@ -321,6 +326,8 @@ files:
321
326
  - lib/axi/AXI_stream/parse_big_field_table.sv
322
327
  - lib/axi/AXI_stream/parse_big_field_table_A1.sv
323
328
  - lib/axi/AXI_stream/parse_big_field_table_A2.sv
329
+ - lib/axi/AXI_stream/parse_big_field_table_main.sv
330
+ - lib/axi/AXI_stream/parse_big_field_table_mirror.sv
324
331
  - lib/axi/AXI_stream/parse_big_field_table_verb.sv
325
332
  - lib/axi/AXI_stream/parse_common_frame_table.sv
326
333
  - lib/axi/AXI_stream/parse_common_frame_table_A1.sv
@@ -351,6 +358,7 @@ files:
351
358
  - lib/axi/SIM/tb_wide_axis_to_axi4_wr.sv
352
359
  - lib/axi/axi4_to_xilinx_ddr_native/axi4_to_native_for_ddr_ip.sv
353
360
  - lib/axi/axi4_to_xilinx_ddr_native/axi4_to_native_for_ddr_ip_C1.sv
361
+ - lib/axi/axi4_to_xilinx_ddr_native/axi4_to_native_for_ddr_ip_C2.sv
354
362
  - lib/axi/axi4_to_xilinx_ddr_native/axi4_to_native_for_ddr_ip_verb.sv
355
363
  - lib/axi/axi4_to_xilinx_ddr_native/axi4_to_native_for_ddr_ip_verc.sv
356
364
  - lib/axi/axi4_to_xilinx_ddr_native/ddr3_ip_native_to_axi4.sv
@@ -358,6 +366,8 @@ files:
358
366
  - lib/axi/axi4_to_xilinx_ddr_native/ddr_axi4_to_axis.sv
359
367
  - lib/axi/axi4_to_xilinx_ddr_native/ddr_native_fifo.sv
360
368
  - lib/axi/axi4_to_xilinx_ddr_native/ddr_native_fifo_A1.sv
369
+ - lib/axi/axi4_to_xilinx_ddr_native/ddr_native_fifo_A2.sv
370
+ - lib/axi/axi4_to_xilinx_ddr_native/ddr_native_fifo_B1.sv
361
371
  - lib/axi/axi4_to_xilinx_ddr_native/ddr_native_fifo_verb.sv
362
372
  - lib/axi/axi4_to_xilinx_ddr_native/model_ddr_ip_app.sv
363
373
  - lib/axi/axi4_to_xilinx_ddr_native/tb_ddr3_ip_wrapper_sim.sv
@@ -1340,7 +1350,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
1340
1350
  requirements:
1341
1351
  - - ">="
1342
1352
  - !ruby/object:Gem::Version
1343
- version: 2.5.0
1353
+ version: 2.6.0
1344
1354
  required_rubygems_version: !ruby/object:Gem::Requirement
1345
1355
  requirements:
1346
1356
  - - ">="