rohitksingh has quit [Remote host closed the connection]
rohitksingh_work has joined #m-labs
proteusguy has quit [Ping timeout: 245 seconds]
rjo has quit [*.net *.split]
keesj has quit [*.net *.split]
Astro- has quit [*.net *.split]
zoobab has quit [*.net *.split]
kristianpaul has quit [*.net *.split]
loxodes has quit [*.net *.split]
acathla has quit [*.net *.split]
cyrozap has quit [*.net *.split]
rjo has joined #m-labs
zoobab has joined #m-labs
loxodes has joined #m-labs
kristianpaul has joined #m-labs
Astro- has joined #m-labs
keesj has joined #m-labs
acathla has joined #m-labs
cyrozap has joined #m-labs
rohitksingh_work has quit [Ping timeout: 255 seconds]
rohitksingh_work has joined #m-labs
<xobs>
Hi, I'm trying to debug a FSM. Is Migen's FSM object documented anywhere? Also, how can I output the current state to some pins, so I can monitor it with an LA?
<xobs>
Or is there no way to get the state, and I just have to manually set signals as I enter and leave states?
<kay2>
xobs: why don't you do it in simulation first ?
<xobs>
kay2: this particular design works fine in simulation, but behaves oddly on real hardware.
<kay2>
rarely happen ;)
<kay2>
you have fsm.state then in this case
<kay2>
you are using a SoC ?
<xobs>
I am.
<kay2>
misoc or litex ?
<xobs>
When I tried that, Python said "AttributeError: 'FSM' object has no attribute 'state"
<xobs>
Litex
<kay2>
then concider using litescope
<xobs>
I don't think I have enough room on this FPGA to add in litescope. It's 90% full already...
<xobs>
What does "finalized" mean? Should I call `do_finalize()` myself on the FSM in order to access the state?
<kay2>
migen does it on 2nd pass
<xobs>
Is the FSM documented anywhere? I just see documentation on `FSM.act()`, but I see a lot more functions used. For example, what does NextValue() do?
<kay2>
allows you to synchroniously set a value
<kay2>
what are you trying to do with this fsm ?
<xobs>
I understand that it sets a particular Signal to a given Value. Does that only happen for the next clock cycle? Or does it permanently change the value and it goes back to 0 in two cycles? Or does it set the value and keep it there until it's transitioned to another state?
<kay2>
it does set the value synchroniously !
<kay2>
as if you were in a self.sync
<kay2>
while the rest of the fsm is done in comb
<kay2>
try to explain more what you are trying to achieve with ur fsm
<xobs>
I'm trying to get a USB stack working.
<xobs>
There are two shift registers: One for Tx and one for Rx. I can transmit data just fine, and I can receive data just fine, and this state machine that glues them together works fine in simulation, but gives random and corrupt values during execution on real hardware.
<xobs>
I'm trying to understand whether it's getting into a bad state due to some async logic bugs, or maybe it's just skipping states altogether.
rohitksingh_wor1 has joined #m-labs
rohitksingh_work has quit [Ping timeout: 244 seconds]
m4ssi has joined #m-labs
<kay2>
hard to tell
<xobs>
Yeah, I really think I'm not understanding what a Migen FSM is. I brought out one particular state to an external pin, and I'm seeing that it spends 4ns in this state. That... is probably the source of my problems.
<xobs>
Are before/after_entering/leaving() documented anywhere?
<kay2>
in the example?
<kay2>
what usb core are you using ? valentyusb ?
rohitksingh_work has joined #m-labs
rohitksingh_wor1 has quit [Ping timeout: 244 seconds]
<xobs>
Yeah, I'm porting valentyusb to Fomu.
<kay2>
i thought mitro was doing that
<xobs>
I took it over from him.
cedric has quit [Ping timeout: 240 seconds]
cedric has joined #m-labs
cedric has quit [Changing host]
cedric has joined #m-labs
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
_whitelogger has joined #m-labs
futarisIRCcloud has joined #m-labs
Gurty has joined #m-labs
Gurty has quit [Changing host]
Gurty has joined #m-labs
rohitksingh_work has quit [Read error: Connection reset by peer]
futarisIRCcloud has quit [Quit: Connection closed for inactivity]
proteusguy has joined #m-labs
proteusguy has quit [Ping timeout: 252 seconds]
rohitksingh has joined #m-labs
proteusguy has joined #m-labs
proteusguy has quit [Ping timeout: 252 seconds]
wolfspraul has quit [Quit: leaving]
wolfspraul has joined #m-labs
acathla has quit [Remote host closed the connection]
acathla has joined #m-labs
acathla has quit [Changing host]
acathla has joined #m-labs
m4ssi has quit [Quit: Leaving]
wolfspraul has quit [Quit: leaving]
wolfspraul has joined #m-labs
rohitksingh has quit [Remote host closed the connection]