Change RX sampling time to happen in the middle of the bit #1
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Hi,
I used your project as starting point for implementing an UART module. While investigating it I found that the RX sampling happens very early inside a bit, see the commited before.png
This isn't very robust and could cause troube with faulty data sampling.
Therefore I changed the code to sample in the middle of the bit, as you can see in after.png
The change is rather large because I detected the issue during my rework of reducing the logic usage for CPLD, by removing the double sampling clock generation counters.
And I also added "Optimize Here" Markers for later trials - please ignore them for now.
Just let me know if something is unclear.
You can find my testbench and project setup here in case you're interested:
https://github.com/sd2k9/hdl_uart_echo