[Libre-soc-bugs] [Bug 199] Layout using coriolis2 main core, 180nm
bugzilla-daemon at libre-soc.org
bugzilla-daemon at libre-soc.org
Sat Sep 26 00:52:06 BST 2020
https://bugs.libre-soc.org/show_bug.cgi?id=199
--- Comment #76 from Luke Kenneth Casson Leighton <lkcl at lkcl.net> ---
jean-paul, staf may have been in touch with you already: i have the
IO connections done, now, with signals in the form:
gpio_i[16]
gpio_o[16]
gpio_oe[16]
which is the "standard" way of declaring IO connections where the
direction of the IOpad needs to be controlled by the ASIC.
i took a look at pxlib and these look like they match with piot_px.
but... there's nothing in ioring.py declaration about the direction,
despite e.g. the AM2901 example clearly having bi-directional pads.
how does that work? i've located the AM2901 example which i can see
does have "inout" ports, however it's not obvious to me how the
"q3_from_pads" and "q3_to_pads" get turned into... you with me?
ah!
cumulus plugin IoPadConf.
entries in the chip dictionary, "pads.instances".
so anything in that entry will be explicitly declared (bi-directional)
and we can set the pin name ("GPIOA0") and set the in, out and oe.
however if we _don't_ set an entry in pads.instances, cumulus plugin
will "auto-detect" the pad type based on the name and so on.
Staf if you make something like pxlib, we can set the cell library
name using a config option in ioring.py
we have one example here - line 6 - where the pad cell library
is set to "pxlib":
https://git.libre-soc.org/?p=soclayout.git;a=blob;f=experiments4/coriolis2/ioring.py;hb=HEAD
but, Jean-Paul: Staf would like to be able to allow people to set the
drive strength. this would be something that should go into additional
options in IoPadConf in the cumulus plugin.
--
You are receiving this mail because:
You are on the CC list for the bug.
More information about the libre-soc-bugs
mailing list