60 lines
1.4 KiB
Markdown
60 lines
1.4 KiB
Markdown
|
|
# Advanced usage of openFPGALoader
|
||
|
|
|
||
|
|
## Resetting an FPGA
|
||
|
|
|
||
|
|
```bash
|
||
|
|
openFPGALoader [options] -r
|
||
|
|
```
|
||
|
|
|
||
|
|
## Reading the bitstream from STDIN
|
||
|
|
|
||
|
|
```bash
|
||
|
|
cat /path/to/bitstream.ext | openFPGALoader --file-type ext [options]
|
||
|
|
```
|
||
|
|
|
||
|
|
`--file-type` is required to detect file type
|
||
|
|
|
||
|
|
Note: It's possible to load a bitstream through network:
|
||
|
|
|
||
|
|
```bash
|
||
|
|
# FPGA side
|
||
|
|
nc -lp port | openFPGALoader --file-type xxx [option
|
||
|
|
# Bitstream side
|
||
|
|
nc -q 0 host port < /path/to/bitstream.ext
|
||
|
|
```
|
||
|
|
|
||
|
|
## Automatic file type detection bypass
|
||
|
|
|
||
|
|
Default behavior is to use file extension to determine file parser. To avoid
|
||
|
|
this mecanism `--file-type type` must be used.
|
||
|
|
|
||
|
|
## FT231/FT232 bitbang mode and pins configuration
|
||
|
|
|
||
|
|
*FT232R* and *ft231X* may be used as JTAG programmer. JTAG communications are
|
||
|
|
emulated in bitbang mode.
|
||
|
|
|
||
|
|
To use these devices user needs to provides both the cable and the pin mapping:
|
||
|
|
```bash
|
||
|
|
openFPGALoader [options] -cft23XXX --pins=TDI:TDO:TCK:TMS /path/to/bitstream.ext
|
||
|
|
```
|
||
|
|
where:
|
||
|
|
* ft23XXX may be **ft232RL** or **ft231X**
|
||
|
|
* TDI:TDO:TCK:TMS may be the pin ID (0 <= id <= 7) or string value
|
||
|
|
|
||
|
|
allowed values are:
|
||
|
|
|
||
|
|
| value | ID |
|
||
|
|
|-------|----|
|
||
|
|
| TXD | 0 |
|
||
|
|
| RXD | 1 |
|
||
|
|
| RTS | 2 |
|
||
|
|
| CTS | 3 |
|
||
|
|
| DTR | 4 |
|
||
|
|
| DSR | 5 |
|
||
|
|
| DCD | 6 |
|
||
|
|
| RI | 7 |
|
||
|
|
|
||
|
|
## Writing to an arbitrary address in flash memory
|
||
|
|
|
||
|
|
With FPGA using an external SPI flash (*xilinx*, *lattice ECP5/nexus/ice40*, *anlogic*, *efinix*) option **-o** allows one to write raw binary file to an arbitrary adress in FLASH.
|