Skip to content
This repository was archived by the owner on Jan 5, 2026. It is now read-only.

migen.fhdl.specials: add per bit oe option to TSTriple#205

Open
TomKeddie wants to merge 2 commits intom-labs:masterfrom
TomKeddie:tomk_20200225_perbitoe
Open

migen.fhdl.specials: add per bit oe option to TSTriple#205
TomKeddie wants to merge 2 commits intom-labs:masterfrom
TomKeddie:tomk_20200225_perbitoe

Conversation

@TomKeddie
Copy link

No description provided.

@sbourdeauducq
Copy link
Member

Has this been tested?
The Verilog output is something like:

assign i2c_sda = satellite_i2c_tstriple1_oe ? satellite_i2c_tstriple1_o : 1'bz;

Does that do the right thing when oe is more than 1 bit?

TomKeddie pushed a commit to TomKeddie/prj-litex that referenced this pull request Apr 25, 2020
@TomKeddie
Copy link
Author

I created a set of tests at https://github.com/TomKeddie/prj-litex/tree/master/icebreaker/perbitoe.
I couldn't trip the TRELLIS_IO case easily but everything else is as expected.

tom@z400:~/git/TomKeddie/prj-litex/icebreaker/perbitoe$ make
diff origin/arty_a7_build/top.v     branch/arty_a7_build/
diff origin/icebreaker_build/top.v  branch/icebreaker_build/
diff origin/papilio_pro_build/top.v branch/papilio_pro_build/
diff origin/versaecp55g_build/top.v branch/versaecp55g_build/
diff origin/arty_a7_build/top.v     perbitoe/arty_a7_build/
9c9
< wire module_oe;
---
> wire [1:0] module_oe;
make: [Makefile:24: diff_origin_perbitoe] Error 1 (ignored)
diff origin/icebreaker_build/top.v  perbitoe/icebreaker_build/
9c9
< wire module_oe;
---
> wire [1:0] module_oe;
46c46
< 	.OUTPUT_ENABLE(module_oe),
---
> 	.OUTPUT_ENABLE(module_oe[0]),
55c55
< 	.OUTPUT_ENABLE(module_oe),
---
> 	.OUTPUT_ENABLE(module_oe[1]),
make: [Makefile:25: diff_origin_perbitoe] Error 1 (ignored)
diff origin/papilio_pro_build/top.v perbitoe/papilio_pro_build/
9c9
< wire module_oe;
---
> wire [1:0] module_oe;
make: [Makefile:26: diff_origin_perbitoe] Error 1 (ignored)
diff origin/versaecp55g_build/top.v perbitoe/versaecp55g_build/
9c9
< wire module_oe;
---
> wire [1:0] module_oe;
make: [Makefile:27: diff_origin_perbitoe] Error 1 (ignored)

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants