This repository provides the VHDL code for merge sorter.
- introduction
- word package
- word compare
- sorting network
- bitonic sorter
- oddeven sorter
- merge sort node(single word)
- merge sort node(multi word)
- merge sort tree
- merge sort core 1
- merge sort core 2
- merge sort core 3
- ArgSort IP
- ArgSort-Ultra96
- ArgSort-Kv260
Distributed under the BSD 2-Clause License.
An argsort with AXI I/F is provieded as a test example.
The VHDL code for argsort can be found at:
- src/main/vhdl/examples/argsort_axi/
Also, the argsort test bench is located at:
- src/test/vhdl/argsort_axi_test_bench.vhd
- src/test/scenarios/argsort_axi/
- GHDL 0.35 or later
- Ruby 2.5 or later
shell$ cd sim/ghdl-0.35/argsort_axi
shell$ make
- nvc 1.7.2 or later
- Ruby 2.5 or later
shell$ cd sim/nvc/argsort_axi
shell$ make
- Xilinx Vivado 2019.2
Caution. does not work with Vivado 2020.1
If you have already created a project, omit it The Tcl script for generating the project is prepared in the following location
- sim/vivado/argsort_axi/create_project.tcl
- sim/vivado/argsort_axi/add_files.tcl
Running the Tcl script in Vivado as follows will generate the project.
Vivado > Tools > Run Tcl Script.. > sim/vivado/argsort_axi/create_project.tcl
Vivado > Open Project > sim/vivado/argsort_axi/argsort_axi.xpr
Flow Navigator > Run Simulation > Run behavioral Simulation