-
Notifications
You must be signed in to change notification settings - Fork 168
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Changed READMEs related to FPGA and renamed openocd config files
- Loading branch information
Manuel Eggimann
committed
Aug 6, 2019
1 parent
160dd2d
commit d99d715
Showing
5 changed files
with
169 additions
and
38 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,56 @@ | ||
# PULPissimo on the Digilent Genesys2 Board | ||
[\[Documentation\]](https://reference.digilentinc.com/reference/programmable-logic/genesys-2/start) | ||
|
||
## Bitstream Generation | ||
In the fpga folder, run | ||
```Shell | ||
make genesys2 | ||
``` | ||
which will generate `pulpissimo_genesys2.bit`. | ||
Use Vivado to load it into the FPGA. | ||
|
||
## Default SoC and Core Frequencies | ||
|
||
By default the clock generating IPs are synthesized to provide the following frequencies to PULPissimo: | ||
|
||
| Clock Domain | Default Frequency on Genesys2 board | | ||
|----------------|-------------------------------------| | ||
| Core Frequency | 20 MHz | | ||
| SoC Frequency | 10 MHz | | ||
|
||
|
||
## Peripherals | ||
PULPissimo is connected to the following board peripherals: | ||
|
||
|
||
| PULPissimo Pin | Mapped Board Peripheral | | ||
|----------------|-----------------------------------------------------| | ||
| `SPIM0` pins | QSPI Flash | | ||
| `I2C0` pins | I2C Bus (connects to Board Current Measurement ICs) | | ||
| `spim_csn1` | LED0 | | ||
| `cam_pclk` | LED1 | | ||
| `cam_hsync` | LED2 | | ||
| `cam_data0` | LED3 | | ||
| `cam_data1` | Switch 1 | | ||
| `cam_data2` | Switch 2 | | ||
| `cam_data3` | Button C | | ||
| `cam_data4` | Button D | | ||
| `cam_data5` | Button L | | ||
| `cam_data6` | Button R | | ||
| `cam_data7` | Button U | | ||
|
||
### Reset Button | ||
The USER RESET button (BTN1) resets the RISC-V CPU. | ||
|
||
### UART | ||
PULPissimo's UART port is mapped to the onboard FTDI FT232R USB-UART bridge and thus accessible through the UART micro-USB connector J15. | ||
|
||
### JTAG | ||
PULPIssimo's JTAG plug is connected to Channel 0 of the onboard FTDI USB JTAG | ||
programmer. Therefore we can attach OpenOCD withouth the need of an external | ||
JTAG programmer. Just attach a micro-USB cable to the JTAG SW17 micro-USB connector and use the | ||
provided OpenOCD configuration file: | ||
|
||
```Shell | ||
$OPENOCD/bin/openocd -f pulpissimo/fpga/pulpissimo-genesys2/openocd-genesys2.cfg | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
File renamed without changes.
37 changes: 37 additions & 0 deletions
37
fpga/pulpissimo-zcu104/openocd-zcu104-olimex-arm-usb-ocd-h.cfg
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,37 @@ | ||
adapter_khz 1000 | ||
|
||
# Olimex ARM-USB-OCD-H | ||
interface ftdi | ||
ftdi_device_desc "Olimex OpenOCD JTAG ARM-USB-OCD-H" | ||
ftdi_vid_pid 0x15ba 0x002b | ||
|
||
ftdi_layout_init 0x0908 0x0b1b | ||
ftdi_layout_signal nSRST -oe 0x0200 | ||
ftdi_layout_signal nTRST -data 0x0100 | ||
ftdi_layout_signal LED -data 0x0800 | ||
|
||
|
||
set _CHIPNAME riscv | ||
|
||
jtag newtap $_CHIPNAME unknown0 -irlen 5 -expected-id 0x10102001 | ||
jtag newtap $_CHIPNAME cpu -irlen 5 -expected-id 0x249511C3 | ||
|
||
set _TARGETNAME $_CHIPNAME.cpu | ||
target create $_TARGETNAME riscv -chain-position $_TARGETNAME -coreid 0x3e0 | ||
|
||
gdb_report_data_abort enable | ||
gdb_report_register_access_error enable | ||
|
||
riscv set_reset_timeout_sec 120 | ||
riscv set_command_timeout_sec 120 | ||
|
||
# prefer to use sba for system bus access | ||
riscv set_prefer_sba on | ||
|
||
# dump jtag chain | ||
scan_chain | ||
|
||
|
||
init | ||
halt | ||
echo "Ready for Remote Connections" |