Conversation
|
I forgot that the core files are autogenerated :(( Failing lint |
7d06a9f to
6ddb362
Compare
martin-velay
left a comment
There was a problem hiding this comment.
I have some initial comments. It's a very good start though!
hw/vendor/lowrisc_ip/ip_templates/gpio/dv/env/gpio_env.core.tpl
Outdated
Show resolved
Hide resolved
d83b568 to
32c5f09
Compare
hw/vendor/lowrisc_ip/ip_templates/gpio/dv/env/gpio_env.core.tpl
Outdated
Show resolved
Hide resolved
8a5da04 to
93f0c4e
Compare
|
HI @martin, Thanks for the detailed review. I realized yesterday that the comments I added in the test and vseq were way more difficult and I spent some time making it a bit easier to understanding. Do you mind take another look? Some of your comments are unresolved because either I asked for a go-ahead or a question in replies. |
hw/vendor/lowrisc_ip/ip_templates/gpio/dv/env/gpio_env.core.tpl
Outdated
Show resolved
Hide resolved
4534ce8 to
5ade54b
Compare
525ccea to
e22f462
Compare
It is going to be useful in order to import GPIO related parameters in tb.sv Signed-off-by: Kinza Qamar <kqzaman@lowrisc.org>
Signed-off-by: Kinza Qamar <kqzaman@lowrisc.org>
Signed-off-by: Kinza Qamar <kqzaman@lowrisc.org>
Signed-off-by: Kinza Qamar <kqzaman@lowrisc.org>
Signed-off-by: Kinza Qamar <kqzaman@lowrisc.org>
martin-velay
left a comment
There was a problem hiding this comment.
I feel that the choice of driving patterns on the quarters from the SW and DV at the same time and by crossing the quarters is hard to follow and I am not sure it brings something for a top-level test. I'd suggest to simplify but still driving and checking from both the SW and the DV sides. If you have a doubt we can have a call.
But we are almost there! 👌
The smoketest.c and top_chip_dv_gpio_base_vseq works in pairs in a way that C drives W1's and W0's pattern on the outputs and vseq drives all 1's and all 0's pattern on the inputs. Both C and vseq waits for an expected pattern to arrive in order to drive the next pattern. Signed-off-by: Kinza Qamar <kqzaman@lowrisc.org>
|
The main reason why I am doing things that way is because when we drive all pads in inputs through a wired connection and ask SW to expect that those wires actually changed, looks weird to me. It is still the case that I am driving 2 quarters in inputs directly but that creates a dependency on SW that something eventually will happen and SW needs to take action about that. If not, I am happy to simplify this if you want. |
WIP