Skip to content

Commit

Permalink
brot, wip
Browse files Browse the repository at this point in the history
  • Loading branch information
sylefeb committed May 6, 2024
1 parent c6d6a1d commit b4e3994
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 1 deletion.
2 changes: 2 additions & 0 deletions frameworks/boards/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ The board directory has to contain a (board.json)[ulx3s/board.json] file. This f
- the list of constraint files (typically where pin assignments and names are specified)
- the command line for programming the board

> *Important:* For your install to see the changes, Silice has to be reinstalled on your system by running the `compile_silice_(system).sh` script at the root of the repo.
## Standard pin sets

To simplify writing multi-board code, Silice uses standards set of pins. This is not mandatory but helps development! The most important is to preserve the pin names, the signal width are expected to vary, this can be dealt with with pre-processor definitions in the Verilog glue, see e.g. [NUM_LEDS](ulx3s/ulx3s.v).
Expand Down
3 changes: 2 additions & 1 deletion frameworks/boards/brot/board.json
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,8 @@
{"set" : "sync_in", "define" : "SYNC_IN=1"},
{"set" : "sync_out", "define" : "SYNC_OUT=1"},
{"set" : "ps2", "define" : "PS2=1"},
{"set" : "sdcard", "define" : "SDCARD=1"}
{"set" : "sdcard", "define" : "SDCARD=1"},
{"set" : "vga", "define" : "VGA=1"}
],
"builders": [
{
Expand Down
21 changes: 21 additions & 0 deletions frameworks/boards/brot/brot.v
Original file line number Diff line number Diff line change
Expand Up @@ -166,6 +166,20 @@ module top(
`endif
`ifdef SYNC_OUT
output PMOD_B9,
`endif
`ifdef VGA
output GPIO0, // R0
output GPIO1, // R1
output GPIO2, // R2
output PMOD_B1, // G0
output GPIO3, // G1
output GPIO4, // G2
output GPIO5, // G3
output PMOD_B2, // B0
output PMOD_B8, // B1
output GPIO6, // B2
output GPIO7, // HS
output PMOD_B7, // VS
`endif
input CLK_48
);
Expand Down Expand Up @@ -341,6 +355,13 @@ PMOD_A8 is on a global buffer on the 'in fpga' and has to be used for the clock
.in_com_clock(PMOD_A8),
.in_com_valid(PMOD_B3),
`endif
`ifdef VGA
.out_video_r({GPIO0,GPIO1,GPIO2}),
.out_video_g({PMOD_B1,GPIO3,GPIO4,GPIO5}),
.out_video_b({GPIO6,PMOD_B8,PMOD_B2}),
.out_video_hs(GPIO7),
.out_video_vs(PMOD_B7),
`endif
// -----------------------------------------------------------------------------
.in_run(run_main)
);
Expand Down

0 comments on commit b4e3994

Please sign in to comment.