CTU CAN FD IP Core issueshttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues2018-08-30T21:14:53Zhttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/179Feature test clock tolerance2018-08-30T21:14:53ZIlle, Ondrej, Ing.Feature test clock toleranceAt the moment, both nodes of CTU CAN FD in Feature test environment are feeded with the
same clock tolerance:
`clk_gen_proc: clock_gen_proc(period => f100_Mhz, duty => 50, epsilon_ppm => 0, out_clk => p(i).clk_sys);`
This is not very g...At the moment, both nodes of CTU CAN FD in Feature test environment are feeded with the
same clock tolerance:
`clk_gen_proc: clock_gen_proc(period => f100_Mhz, duty => 50, epsilon_ppm => 0, out_clk => p(i).clk_sys);`
This is not very good, since both nodes will be totally synchronous, and thus errors due
to possible malfunction of resynchronisation might not be caught. At this point of design
two CTU CAN FD should fully work with asynchronous clocks (as in Sanity test).
This should be fixed and e.g. second node should have clock tolerance of 100 ppm. Even more beneficical
would be to calculate maximal clock tolerance from CTU CAN FD standard for Bit Timing settings of
Feature test.Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/173Bus Start Test2018-09-02T11:23:42ZIlle, Ondrej, Ing.Bus Start TestDuring documentation updated and Protocol Control review, it was discovered that after 11 recessive bits PC_Control switches
to "inteframe" state, intermission part. This might cause the fact that directly after this switch, SOF will be ...During documentation updated and Protocol Control review, it was discovered that after 11 recessive bits PC_Control switches
to "inteframe" state, intermission part. This might cause the fact that directly after this switch, SOF will be interpreted as Overload condition.
IMO interframe state should go directly to "intermission idle" state.
It might be good to examine this possible issue and add test in which one node will join active communication. This can be done in feature tests where only one frame will be sending frames with STM mode and other node will be Enabled when frame is
in progress!Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/172Code coverage improvements2018-07-21T17:02:07ZIlle, Ondrej, Ing.Code coverage improvementsActual implementation of test logic is using standard "if" clause which is no very good since,
in case of error multiple lines are not executed and code coverage gets into red numbers.
The aim of this task is to use "assert" statement w...Actual implementation of test logic is using standard "if" clause which is no very good since,
in case of error multiple lines are not executed and code coverage gets into red numbers.
The aim of this task is to use "assert" statement where possible for implementation of tests.
This would cause (in case of feature tests) loss of generality since "o.outcome" can not be
asserted by assert statement! Possible solution for this problem might be rewriting the
tests to assume that test will fail by default and that when condition is satisfied, outcome
is set to desired value!Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/169Message filter feature test2018-09-21T17:28:07ZIlle, Ondrej, Ing.Message filter feature testAdd feature test which will verify usage of each message filter (A,B,C and Range). Simple
implementation with 4 * 2 frames (one passing, one failing frame for each filter) in single
iteration.
Thisway, code coverage for Memory registers...Add feature test which will verify usage of each message filter (A,B,C and Range). Simple
implementation with 4 * 2 frames (one passing, one failing frame for each filter) in single
iteration.
Thisway, code coverage for Memory registers will improve + new mechanism of ANDed RX Buffer
commands will be verified.Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/167Data length code test2018-07-14T21:43:23ZIlle, Ondrej, Ing.Data length code testAdd feature test, which will generate CAN 2.0 Frames with DLC < 8 and verify that all 8 bytes
of Data are sent! Then generate CAN Frame with DLC > 8, send it, and verify that only 8 bytes
were sent and received!Add feature test, which will generate CAN 2.0 Frames with DLC < 8 and verify that all 8 bytes
of Data are sent! Then generate CAN Frame with DLC > 8, send it, and verify that only 8 bytes
were sent and received!Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/166Suspend transmission feature test2018-09-03T17:59:28ZIlle, Ondrej, Ing.Suspend transmission feature testTest maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/156tx_arb_unit_test fails on 205th iteration2018-09-05T17:56:10ZMartin Jeřábektx_arb_unit_test fails on 205th iterationWhen TX arbitration unit test is run with high number of iterations, it eventually fails on "DUT and Model Frame valid not matching!".When TX arbitration unit test is run with high number of iterations, it eventually fails on "DUT and Model Frame valid not matching!".Test maintenanceIlle, Ondrej, Ing.Ille, Ondrej, Ing.https://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/154Extend basic unit test run2018-06-13T15:33:31ZIlle, Ondrej, Ing.Extend basic unit test runTest maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/149CAN Test randomization2018-06-09T11:38:22ZIlle, Ondrej, Ing.CAN Test randomizationAdd randomize input to
CAN Test entity (and possibly also to CAN Test wrapper).
During test initialization random index should be selected for each rand_ctr, if this input is true.
This will allow for automated runs of tests with diffe...Add randomize input to
CAN Test entity (and possibly also to CAN Test wrapper).
During test initialization random index should be selected for each rand_ctr, if this input is true.
This will allow for automated runs of tests with different data!Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/148GHDL 2008 support2018-06-23T04:46:18ZIlle, Ondrej, Ing.GHDL 2008 supportCheck GHDL 2008 support for possible use with feature tests and internal signals.Check GHDL 2008 support for possible use with feature tests and internal signals.Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/147Timestamp options feature test2018-06-29T11:50:52ZIlle, Ondrej, Ing.Timestamp options feature testImplement feature test which will configure timestamp capturing from both, end and beginning of
frames and verify that timestamp is captured properly!Implement feature test which will configure timestamp capturing from both, end and beginning of
frames and verify that timestamp is captured properly!Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/144Event logger unit test2018-06-06T13:04:20ZIlle, Ondrej, Ing.Event logger unit testFinish event logger unit test. Make sure that it covers expected functionality of
event logger. Debug event logger module if necessary.Finish event logger unit test. Make sure that it covers expected functionality of
event logger. Debug event logger module if necessary.Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/138Severity failure finish2018-06-27T13:32:51ZIlle, Ondrej, Ing.Severity failure finishUp to now, CAN Test framework is using report with severity failure to force end of simulation.
This is not good for future automated runs. If tests would be evaluated by severities of logs,
this would cause all tests to fail. And, it i...Up to now, CAN Test framework is using report with severity failure to force end of simulation.
This is not good for future automated runs. If tests would be evaluated by severities of logs,
this would cause all tests to fail. And, it is just pure shit to print out:
report "TEST SUCCESS" severity failure.
This task should focus on updating "generate_clock" function to forbid generation once "run" input
is set to false (Or rather when test status is "passed" or "failed"). Hopefully this will not
decrease simulation performance (since there will be extra comparison each clock cycle).
Furthermore, main test loop should finish with "wait" statement to avoid running the test again.
Tricky part of this task is that some of the test have processes which never finish (e.g. are
blocked due to disabled feature in test). Simulator should quit, once there are no events to
process. Hopefully blocked processes won't block the simulator in infinite loop.
If yes (check in Bit Stuffing unit test), then tests must be examined and approach must be
modified.
I believe it is not too many processes...Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/137Remove simulation warnings2018-06-06T13:04:20ZIlle, Ondrej, Ing.Remove simulation warningsSimulation warnings are caused by un-initialized values of signals. Remove them, either initialize
signal values, or find simulation setting which will remove the warnings.Simulation warnings are caused by un-initialized values of signals. Remove them, either initialize
signal values, or find simulation setting which will remove the warnings.Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/136APB wrapper test2018-05-25T09:48:51ZMartin JeřábekAPB wrapper testEssentially identical to #71, but APB is much simpler than AXI.
Should probably be a unit test, testing the following:
- read from a register
- write to a register, reading back the same value
- write with byte enable
- access to the...Essentially identical to #71, but APB is much simpler than AXI.
Should probably be a unit test, testing the following:
- read from a register
- write to a register, reading back the same value
- write with byte enable
- access to the register with the highest address to verify correct address passing
- read just after (or during) HW reset correctly stalls until the core is readyTest maintenanceMartin JeřábekMartin Jeřábekhttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/126Extend bit stuffing unit test2018-06-06T13:04:20ZIlle, Ondrej, Ing.Extend bit stuffing unit testAt the moment Bit Stuffing unit test is missing SW modeled behaviour (of either Bit Stuffing or Bit destuffing)
which would calculate bit stuffing in behavioral way.
Add such a model and verify that bit stuffing is always returning the ...At the moment Bit Stuffing unit test is missing SW modeled behaviour (of either Bit Stuffing or Bit destuffing)
which would calculate bit stuffing in behavioral way.
Add such a model and verify that bit stuffing is always returning the same results as this model.Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/125Consolidate test library2018-06-06T13:04:20ZIlle, Ondrej, Ing.Consolidate test libraryThis issue should cover following topics:
1. Consolidation of CANtestlib.vhd. Add missing comments, format the code properly (4 spaces indent), remove unnecessary
functions
2. Add new set of functions which can be used in "feature t...This issue should cover following topics:
1. Consolidation of CANtestlib.vhd. Add missing comments, format the code properly (4 spaces indent), remove unnecessary
functions
2. Add new set of functions which can be used in "feature test". Due to many changes in the register map, most of the
feature tests are broken. If feature tests will be repaired, and register map changes again, there will be need for
further reparations! This is undesirable. There is an idea to create set of low level functions which access
the registers (sth. like HAL) and feature tests will only use these functions to execute tests. If register map changes,
only test library must be updated, and test code and test logic can remain unchanged!Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/118Fault confinement unit test2018-06-06T13:04:20ZIlle, Ondrej, Ing.Fault confinement unit testImplement missing unit test for fault confinement circuit.Implement missing unit test for fault confinement circuit.Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/116Message filter unit test2018-04-15T15:33:34ZIlle, Ondrej, Ing.Message filter unit testCorrect the Message filter unit test with the newest implementation of optional message filters
and re-ordered identifiers!Correct the Message filter unit test with the newest implementation of optional message filters
and re-ordered identifiers!Test maintenancehttps://gitlab.fel.cvut.cz/canbus/ctucanfd_ip_core/-/issues/112TX Arbitrator unit test2018-06-02T22:02:51ZIlle, Ondrej, Ing.TX Arbitrator unit testTest maintenance