How can I convert from decimal to binary for HDL Coder?

I am creating a Simulink model for HDL code generation. I would like to convert a signal into a vector of bits so that I can perform operations on each individual bit. There is no block that performs this operation, so I would like to create a custom implementation. What is the best way to do this that will not generate excessive code?

 채택된 답변

MathWorks Support Team
MathWorks Support Team 2020년 12월 21일

0 개 추천

A convenient way to perform this operation is to use the MATLAB Function block. There is an example implementation of this type of block within the eml_hdl_design_patterns example library. The Integer to Bits block within this library can be added to a model to convert a scalar to a vector of bits. Refer to the following for more information on this example:
Note that the following modifications may be required to ensure compatibility with an existing model:
  1. Specify output vector length by creating variable maxWordLength or directly entering a value in the block's mask.
  2. This block outputs a 1xN vector. If downstream blocks expect an Nx1 vector, either the MATLAB function can be edited to switch vector dimensions, or the output signal can be reshaped to the expected dimensions.

추가 답변 (1개)

Kiran Kintali
Kiran Kintali 2020년 12월 30일

0 개 추천

Attaching the model in the example for convenience.

카테고리

도움말 센터File Exchange에서 Code Generation에 대해 자세히 알아보기

제품

릴리스

R2020b

태그

아직 태그를 입력하지 않았습니다.

Community Treasure Hunt

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

Start Hunting!

Translated by