2021-07-20 10:48:14 -04:00
|
|
|
Timer
|
|
|
|
~~~~~~
|
2021-07-14 21:41:09 -04:00
|
|
|
|
|
|
|
This example is built specifically for the basys3 and demonstrates a greater variety of I/O
|
2021-07-20 10:48:14 -04:00
|
|
|
then previous designs. It also demonstrates symbiflow's support for code written in System Verilog
|
2021-07-14 21:41:09 -04:00
|
|
|
as well as its support of dictionaries in XDCs. To build this example run the following commands:
|
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
:name: example-watch-basys3
|
|
|
|
|
2021-07-20 10:48:14 -04:00
|
|
|
make -C timer
|
2021-07-14 21:41:09 -04:00
|
|
|
|
|
|
|
|
|
|
|
At completion, the bitstream is located in the build directory:
|
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
|
2021-07-20 10:48:14 -04:00
|
|
|
cd timer/build/basys3
|
2021-07-14 21:41:09 -04:00
|
|
|
|
|
|
|
Now, you can upload the design with:
|
|
|
|
|
|
|
|
.. code-block:: bash
|
|
|
|
|
|
|
|
openocd -f ${INSTALL_DIR}/${FPGA_FAM}/conda/envs/${FPGA_FAM}/share/openocd/scripts/board/digilent_arty.cfg -c "init; pld load 0 top.bit; exit"
|
|
|
|
|
|
|
|
After downloading the bitstream you can start and stop the watch by toggling switch 0 on the board.
|
2021-07-20 10:48:14 -04:00
|
|
|
Press the center button to reset the counter. The following gives a visual example:
|
2021-07-14 21:41:09 -04:00
|
|
|
|
2021-07-21 18:41:18 -04:00
|
|
|
.. image:: ../../docs/images/timer.gif
|
2021-07-14 21:41:09 -04:00
|
|
|
:align: center
|
2021-08-20 15:26:26 -04:00
|
|
|
:width: 50%
|