hello friends, I need some help please,
I'm designing an I2C slave using stetflow, to make an HDL IP Core out of it using HDL Workflow Advisor.
Could not apply model's setting to the Target Interface Table in Task 1.2 of the HDL Workflow Advisor for the following reason: network:propagateClockRate:ratesDontMatch: When propagating rates on <Network CtxName="slaveV2" RefNum="n1" UserName="slaveV2/SlaveI2C/Chart" RTTIClass ="class pir::Network"/>, signal <Signal CtxName="slaveV2" RefNum="s0" UserName="scl" RTTIClass ="class pir::Signal" Network="n1\> had rate 0.000000, while the trigger signal had rate 0.001000 Default or last valid setting is applied instead. If you are using the HDL Workflow Command Line Interface, consider making these changes in the HDL Workflow Advisor and using 'Export to Script...' to automatically generate the appropriate 'hdlset_param' commands.
So to work around this I deleted the 3 events and implemented the edge detection in Simulink with a "Detect Rise" block, and use the output of the "Detect Rise" as a regular Stateflow input, same for "Detect Fall" block (this solution worked fine with early versions of this project, so would like to stick to this one), but to my big surprise it blocks in the simulation phase giving the following error message:
Error in default port dimensions function of S-function 'slaveV3/SlaveI2C/Chart'. This function does not fully set the dimensions of output port 3 the slx model with events (slaveV2) and the one with the simulink blocks "DetectRise" and Detect Fall" (slaveV3) are attached below, as well as the file "myI2C_Scenario.mat" containing the scenarios of a supposed master signal sources "sda" and "scl" for the signal editor (I'm interested in the Scenario_readSlave for the moment). To test it for yourself, as mySlvAdr and dataT are parameters you can declare their values in the matlab command window: mySlvAdr=53 dataT = 3802
Please help me. This is so vital for me! Thank you for your time, and consideration! I have attached elements of the problem so you please be kind and take a look. very appreciated.