lowRISC / opentitan

OpenTitan: Open source silicon root of trust
https://www.opentitan.org
Apache License 2.0
2.59k stars 782 forks source link

[pattgen,doc] Documentation might not be up to date #23340

Open pamaury opened 6 months ago

pamaury commented 6 months ago

Description

The following issues were found when when porting the pattgen_ios_test to master.

Inactive level and polarity feature

The documentation says For either channel, a zero in the polarity bit indicates that the channel clock line (pcl) should start low, and the channel data line pda transitions on every falling edge of pcl. A one in the polarity bit inverts the pcl clock so that it starts high and pda transitions on the rising edge.. However it can lead to unclear situations (which to be fair already existed somewhat before this feature). For example if the polarity is set to rising edge and the inactive level pcl is set to high then on the first "clock tick", PCL is already high so it does not technically have a rising edge. Will the data change on that non-existent rising edge or will it wait until the lock actually falls low and rises again?

pamaury commented 5 months ago

@andreaskurth might be relevant for M4?