-
Notifications
You must be signed in to change notification settings - Fork 7
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Mismatch in post-PnR sim and chip operation #30
Comments
@pu-cc , is there anything you still need from Tarik to address this problem? |
@pu-cc is the plan to get us this fix in the upcoming tool update? |
I was having problems running the PSRAM example on my Olimex board even though @tarik-ibrahimovic had no problems with the exact same code. When running the After flipping the
To:
While, thanks to this random change that I cannot see an engineering explanation for, the PSRAM example now works as designed, the main issue is still there. Moreover, it now begs a question in even louder voice:
What is going under the hood, at both silicon and tool level, that is causing these bizarre behaviors? |
Changing a pin can very well lead to a differently placed and routed design. If this has to an error, we have to investigate exactly what the cause is - it is not possible to make a general statement as we are looking at a different design. Does the error still exist if the pins are used again with the original mapping? That is not clear to me at the moment. There have been some updates in P&R since September. |
@tarik-ibrahimovic when you find time, please try with the latest tool. If the problem is fixed, close this issue. |
uart_tx
changes with a change in declared IO ports of the moduleIn this design, when declaring
logic tick_02us
in the1.hw/top.sv
as an IO port everything functions correctly (tick_02us
is not intended to be real IO, but in cases was used as means to debug).However, if removed as an IO port, and left just as an internal signal, the
uart_tx
starts misbehaving. Also, the output duplicate ofuart_tx
,sent
, becomes incorrect. This isn't present in post-PnR sim which seems fine. Important note: Whentick_02us
is mapped to a location like "IO_NB_A0" it still misbehaves, but if mapped to "IO_NB_A2" like in the repo the design works just fine.Steps to recreate the issue
These instructions are for the Olimex board:
tick_02us
from1.hw/top.sv
and uncomment the declaration left belowlogic tick_02us
tick_02us
port from1.hw/constraints/constraints.ccf
tick_02us
port from2.sim/tb.sv
to run the simulations correctlymake
thenmake all_impl
4.testing/pyauto.py
script which communicates via SerialIO_NB_A1
pin and notice thatsent
which is a duplicate ofuart_tx
is also incorrect and doesn't match post-PnR sim.The text was updated successfully, but these errors were encountered: