Skip to main content

MATLAB To HDL Conversion

  Hello Dear Reader,

Here in this post, I will give an idea about how HLS(High-Level Synthesis) works. Here This kind of higher-level language to HDL conversion facility is provided by one of the famous software MATLAB. Here I have implemented a full-adder logic functionality to test the steps. So Let's see how it work.

Steps:

1) Open MATLAB

2) Write a function that you want to convert to VHDL




3) Go to Apps and search for HDL Coder

4) Open HDL Coder and make a new project





5) Add MATLAB function file




6) Click on Workflow Advisor


7) Select Convert to fixed-point at build time because double operation is not suitable for FPGA



8) Define input types




9) Go to Fixed-point conversion and define Static Min and Static Max
10) Go to Data collection and Compute Derived Ranges
 



11) Select Code Generation Target


12) HDL Code Generation
   Select VHDL as an HDL format for RTL conversion. And the last step is to press the run menu which is situated middle of the right side.


13) VHDL Code
   Here below is the VHDL code which is obtained from the above steps which say our steps are successfully implemented.

LIBRARY IEEE;
USE IEEE.std_logic_1164.ALL;
USE IEEE.numeric_std.ALL;

ENTITY full_adder_fixpt IS
  PORT( a                                 :   IN    std_logic;
        b                                 :   IN    std_logic;
        c                                 :   IN    std_logic;
        carry                             :   OUT   std_logic;
        sum                               :   OUT   std_logic
        );
END full_adder_fixpt;


ARCHITECTURE rtl OF full_adder_fixpt IS

BEGIN
  --HDL code generation from MATLAB function: full_adder_fixpt
  --%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  --                                                                          %
  --           Generated by MATLAB 9.4 and Fixed-Point Designer 6.1           %
  --                                                                          %
  --%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
  sum <= ((((( NOT a) AND ( NOT b)) AND c) OR ((( NOT a) AND b) AND ( NOT c))) OR ((a AND ( NOT b)) AND ( NOT c))) OR ((a AND b) AND c);
  carry <= ((a AND b) OR (b AND c)) OR (a AND c);

END rtl;

 














 

Comments

  1. Superb easy explanation for this awaiting topic.

    ReplyDelete
  2. Completed sir this steps best learning thanks for your efforts.

    ReplyDelete
  3. First ever I found this solution

    ReplyDelete

Post a Comment

Popular posts from this blog

Electronic Engineer at Thinture Technologies Pvt. Ltd

Hello Dear Readers, Currently, at Thinture Technologies Pvt. Ltd vacancy for Electronic Engineer role. Thinture Technologies Pvt. Ltd. is a vehicle control systems manufacturer, with a primary focus on road speed limitation and GPS-based tracking systems. All of our products are designed in-house from basic circuit designing to firmware, algorithm to PCB designing, online software platforms to mechanical assembly drawings, and standard operating procedures for aftermarket usage. Role Description: This is a full-time on-site role for an Electronic Engineer located in Bengaluru. The Electronic Engineer will be responsible for the day-to-day tasks associated with electronic engineering, including electronics, electrical engineering, circuit design, testing, and more. Qualifications: Strong electronic engineering skills Sound knowledge of circuit design and electrical engineering Experience with electronics testing and quality assurance Proficient in using software tools for schematic capt

R&D Intern (Electronics Engineering) at Greaves Electric Mobility

Hello Dear Readers, Currently, at Greaves Electric Mobility vacancy for an R&D Intern (Electronics Engineering) role. At Greaves Electric Mobility, we build products and solutions that are designed to democratize smart and sustainable mobility and do our bit to heal the Planet. Backed by the 164 year engineering legacy of Greaves, our portfolio of electric two and three wheelers are made in India at manufacturing sites across Tamil Nadu, Telangana and Uttar Pradesh. Key Responsibilities: Collaborate with experienced engineers in the research and development of electric mobility technologies. Participate in the design, prototyping, and testing of electronic and electrical systems for electric vehicles. Contribute to the analysis and improvement of automotive electrical systems, ensuring compliance with industry standards. Assist in troubleshooting and problem-solving activities related to electric vehicle components. Stay updated on the latest advancements in the electric mobility s

Hardware Design Engineer at TSC Tech Labs

  Hello Dear Readers, Currently, at TSC Tech Labs  vacancy for a Hardware Design Engineer role. Company Description: TSC Tech Labs is a Space and Defence Startup based in Bengaluru. The company has a legacy of developing three Satellites with Space Heritage and holds five active Defence Contracts with the Indian Navy. Role Description: This is a Senior Hardware Design Engineer role and is a full-time on-site position located in Bengaluru. The Senior Hardware Design Engineer will be responsible for designing and developing electronics hardware, circuit design, hardware architecture and hardware development for satellite and defense systems. Responsibilities: Review and understand electrical schematic designs Perform design reviews with other team members Perform layout design based on these schematic designs, complying with product requirements Close collaboration with other project members (system, mechanical, hardware, and firmware engineers, etc.) Prepare PCB/PCBA production document