how translate stateflow variable to hdl std_logic_vector(0 to 7)

1 次查看(过去 30 天)
Hi,
hdlcoder translate the stateflow variable fi(0,0,5,0) to std_logic_vector(0 downto 4), but sometimes I need std_logic_vector(0 to 4). Ofcourse if I use a boolean array hdlcoder translate it to std_logic_vector(0 to 4) but I can't use bitconcat, bitsliceget function, so in this case I need work with array while in the first case I work with bit.
is there a way to work with fi() type and set hdlcoder to translate big or little endian?
Thanks,
Domenico

采纳的回答

Kiran Kintali
Kiran Kintali 2020-10-12
HDLCoder does not currently support such customization. Fixed Point types generate DOWNTO syntax, and arrays including array of booleans generate TO syntax.
  1 个评论
borzack
borzack 2020-10-12
Ok thanks. Are there dedicate functions hdlcoder compatible to compare two boolean array?
if A==B ... end

请先登录,再进行评论。

更多回答(1 个)

Kiran Kintali
Kiran Kintali 2020-10-12
>> type compBoolVector.m
function y = compBoolVector(u, v)
y = all(u == v);
>>
>> a = true(1, 10); b = a; % create some example types
>> codegen -config:hdl -args{a, b} compBoolVector
(or)
>> c = coder.config('hdl');
>> codegen -config c -args {a, b} compBoolVector
### Begin VHDL Code Generation
### Generating HDL Conformance Report compBoolVector_hdl_conformance_report.html.
### HDL Conformance check complete with 0 errors, 0 warnings, and 0 messages.
### Working on compBoolVector as compBoolVector.vhd.
### Generating Resource Utilization Report resource_report.html.
Code generation successful.

类别

Help CenterFile Exchange 中查找有关 Code Generation 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by