Skip to content

Commit 674df25

Browse files
authored
Merge pull request #1 from ajblane/iota-fpga-sockit
Arrow SoCKit Evaluation Board Enablement
2 parents 2ec78e8 + 4819c3e commit 674df25

File tree

3 files changed

+37
-6
lines changed

3 files changed

+37
-6
lines changed

README.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,37 @@ PoC parameters:
2222

2323
[Download](https://github.com/LampaLab/iota_fpga/releases/tag/v0.1) Linux sd-card image for IOTA hardware accelerator on DE10-nano board and [latest](https://github.com/LampaLab/iota_fpga/releases/tag/v0.3) rbf file
2424

25+
## Arrow SoCKit board
26+
Build instructions mentioned RBF file for Arrow SoCKit board. For the sake of consistency, we host FPGA related repository under DLTcollab umbrella.
27+
28+
### Generate the RBF file
29+
* Install Intel Quartus Prime Lite Edition 17.1 and run synthesizing
30+
* Transform SOF file to RBF file
31+
```
32+
~/intelFPGA_lite/17.1/quartus/bin/quartus_cpf -c curl_fpga.sof soc_system.rbf
33+
```
34+
35+
### Quickly start from scratch
36+
* [Download](https://github.com/LampaLab/iota_fpga/releases/tag/v0.1) Linux sd-card image for Cyclone V
37+
* The RBF file for Arrow SocKit board
38+
* Creating an SD Card using a Linux Host
39+
```
40+
$ sudo dd if=DE10_iota_fpga_Linux.img of=/dev/sdb bs=2048
41+
$ sudo sync
42+
```
43+
* Overwrite the RBF file in the SD card
44+
```
45+
$ sudo mkdir sdcard
46+
$ sudo mount /dev/sdb1 sdcard/
47+
$ sudo cp soc_system.rbf sdcard/
48+
$ sudo umount sdcard
49+
```
50+
51+
* Connect to remote shell (account/password: root/123456)
52+
```
53+
54+
```
55+
2556
If you like this work, please donate some MIOTA to support it further development:
2657

2758
[U9XOVBWJUBCE99ZIKIUGXZFSSGLUAPHUG9XZTVOVHZ99HVTQXET9CD9V9FMDNLSLPQDYXOHKBA9MVHI9ZOVCVHVJXA](https://thetangle.org/address/U9XOVBWJUBCE99ZIKIUGXZFSSGLUAPHUG9XZTVOVHZ99HVTQXET9CD9V9FMDNLSLPQDYXOHKBA9MVHI9Z)

pow_accel_soc/hardware/constraints.sdc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@ create_clock -period "50.0 MHz" [get_ports FPGA_CLK1_50]
22
create_clock -period "50.0 MHz" [get_ports FPGA_CLK2_50]
33
create_clock -period "50.0 MHz" [get_ports FPGA_CLK3_50]
44

5-
create_clock -period 200MHz [get_pins -compatibility_mode u0|hps_0|fpga_interfaces|clocks_resets|h2f_user0_clk]
5+
create_clock -period 100MHz [get_pins -compatibility_mode u0|hps_0|fpga_interfaces|clocks_resets|h2f_user0_clk]
66

77
derive_pll_clocks
88

pow_accel_soc/hardware/curl_fpga.qsf

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,14 +37,14 @@
3737

3838

3939
set_global_assignment -name FAMILY "Cyclone V"
40-
set_global_assignment -name DEVICE 5CSEBA6U23I7
40+
set_global_assignment -name DEVICE 5CSXFC6D6F31C6
4141
set_global_assignment -name TOP_LEVEL_ENTITY soc_top
4242
set_global_assignment -name ORIGINAL_QUARTUS_VERSION "13.0 SP1"
4343
set_global_assignment -name PROJECT_CREATION_TIME_DATE "19:03:21 FEBRUARY 11, 2018"
4444
set_global_assignment -name LAST_QUARTUS_VERSION "17.1.0 Lite Edition"
4545
set_global_assignment -name PROJECT_OUTPUT_DIRECTORY output_files
46-
set_global_assignment -name MIN_CORE_JUNCTION_TEMP "-40"
47-
set_global_assignment -name MAX_CORE_JUNCTION_TEMP 100
46+
set_global_assignment -name MIN_CORE_JUNCTION_TEMP 0
47+
set_global_assignment -name MAX_CORE_JUNCTION_TEMP 85
4848
set_global_assignment -name ERROR_CHECK_FREQUENCY_DIVISOR 256
4949
set_global_assignment -name EDA_SIMULATION_TOOL "ModelSim-Altera (SystemVerilog)"
5050
set_global_assignment -name EDA_OUTPUT_DATA_FORMAT "SYSTEMVERILOG HDL" -section_id eda_simulation
@@ -54,8 +54,8 @@ set_global_assignment -name VERILOG_INPUT_VERSION SYSTEMVERILOG_2005
5454
set_global_assignment -name VERILOG_SHOW_LMF_MAPPING_MESSAGES OFF
5555
set_global_assignment -name OPTIMIZATION_TECHNIQUE SPEED
5656
set_global_assignment -name SYNTH_TIMING_DRIVEN_SYNTHESIS ON
57-
set_location_assignment PIN_V11 -to FPGA_CLK1_50
58-
set_location_assignment PIN_Y13 -to FPGA_CLK2_50
57+
set_location_assignment PIN_W15 -to FPGA_CLK1_50
58+
set_location_assignment PIN_AA16 -to FPGA_CLK2_50
5959
set_location_assignment PIN_E11 -to FPGA_CLK3_50
6060
set_global_assignment -name OPTIMIZE_MULTI_CORNER_TIMING ON
6161
set_global_assignment -name ECO_REGENERATE_REPORT ON

0 commit comments

Comments
 (0)