• Duration:5 minutes and 23 seconds
  • Date:2020/12/25
  • Uploader:抛砖引玉
Introduction
keywords: FPGA MATLAB
This video series will show you how to deploy signal processing algorithms to your FPGA design. Using the pulse detection algorithm as an example, this tutorial series begins with the basics required for successful FPGA design and then moves on to adapting the algorithm so that it can be deployed automatically.

HDL Coder™ generates synthesizable VHDL® or Verilog® RTL from MATLAB® functions, Simulink® models, and Stateflow® diagrams, targeting FPGA or ASIC hardware.

HDL Coder™ generates synthesizable VHDL® or Verilog® RTL from MATLAB® functions, Simulink® models, and Stateflow® diagrams, targeting FPGA or ASIC hardware. 
This tutorial uses a simple signal processing algorithm to demonstrate the typical steps that customers follow to adapt their high-level algorithms to hardware architectural details so that they can be efficiently implemented in hardware and verified at each step.
This video covers:
- Key considerations for hardware design: streaming data and fixed resources -
Advantages of MATLAB and Simulink and how to leverage them for hardware design
- Overview of the workflow, including verification of each step -
Overview of HDL Coder self-study tutorials -
MATLAB Introduction to the Golden Reference Algorithm
- Adapting Frame-Based Algorithms to Streaming Algorithms

To effectively apply the algorithm to FPGA or ASIC hardware, it needs to be adapted to handle streaming data and optimized for the amount of fixed resources required. Simulink® helps visualize hardware architecture and data flow. If your original algorithm was developed in MATLAB®, you can reuse much of your work when you modify the algorithm for hardware implementation using Simulink.

This video covers:
- Sharing workspace variables between MATLAB and Simulink
- Leveraging hardware design experience to tune algorithms for efficient implementation
- Logging signals as test points for debugging
- Visualizing data types and how they propagate through the design
- In-flow Reuse MATLAB code in MATLAB function blocks
- Use MATLAB testbench to simulate and verify the output of Simulink hardware implementations


Generating effective FPGA designs often requires balancing data throughput, latency, and hardware resources. Depending on the nature and goals of the design, there are various ways to adapt the algorithm to an efficient hardware implementation. This part of the tutorial shows some methods.

This video covers:
-Setting model parameters for HDL code generation
-How the sample rate of the Simulink® model translates to the clock rate of the FPGA hardware
-Inserting pipeline registers on the data path using various optimization techniques
-Using data valid control signals to monitor Enter sample data
—validate the optimized architecture using the MATLAB® testbench

Efficient hardware implementation requires quantizing your data type to fixed point. Signal processing algorithms can be challenging to convert while maintaining the required accuracy, especially if you are writing RTL by hand. Model-based design methods allow you to easily explore and visualize different options and automate much of the process. This part of the tutorial shows the basic concepts and the general methods that can be used.

This video covers:
-Converting the default 64-bit double data type to a fixed-point
representation -Fixed-point data type definitions in the MATLAB® and Simulink® environments
-Propagating data types to maintain precision during mathematical calculations
-Consistency and accuracy Perform model checking to ensure predictable implementation results
—use golden references to compare and validate fixed-point model designs

Traditionally, FPGA programming begins with providing register transfer level (RTL) VHDL® or Verilog® code to the FPGA synthesis tool. In this part of the tutorial, we show how to automatically generate RTL from a proven high-level architectural model, analyze the estimated time and resource usage, and then run synthesis automatically.

This video covers:
- Running code checks for HDL code generation preparation and potential hardware inefficiencies
- Automatically or manually resolving reported issues
- Setting up third-party tools to synthesize generated VHDL or Verilog
- Using the HDL Workflow Advisor to generate the stages of RTL code , Tasks and Setup
- Resource usage and optimization reports that provide fast high-level feedback before synthesis
- Analyze timing and critical paths for FPGA synthesis


Unfold ↓

You Might Like

Recommended Posts

Steps to connect ccsv5 with matlab. I am also a novice, let's discuss
百度来的资料。。。。。大家分享Martin,You can use CCS v5.1 today with Matlab via the xmakeilesetup infrastructure provided for CCSv4.To do so, follow these instructions:Type xmakefilesetup at the Matlab command promp
jetlin1992 Microcontroller MCU
JLINK V8 simulator beginner video tutorial
Someone is asking about the use of JLINK. I found a video tutorial for beginners on the JLINK V8 emulator and would like to share it with you [flash]http://www.tudou.com/v/-iy5F1W3Btk[/flash]
雪人001 MCU
【Texas Instruments White Paper Download】Battery Charging Considerations for High-Power Portable Devices
This article discusses the single-cell battery charger solution in high-power portable devices, and details the performance and limitations of small high-power application chargers. Welcome to downloa
德州仪器 Analogue and Mixed Signal
How is some information like BT MAC or ID stored on the mobile phone?
I have a question for you guys: [color=#FF0000]Mobile phones or other handheld devices have some ID numbers, such as BT MAC address or IMEI, etc. How are they saved? I think everyone may have saved th
calvin83 Embedded System
Should hardware engineers switch to learning software?
[i=s]This post was last edited by Arvinˇ on 2018-10-12 10:32[/i] Let me first talk about my situation. I have been transferred to three companies for 8 years since graduation, and I have been a hardwa
Arvinˇ Talking
TCPMP crashes when running on A4 ce6.0 (cash reward)
http://topic.eeworld.net/u/20090807/13/9938dac1-f26b-41b9-9da6-440b6b5f64db.html?seed=1771456370&r=59046093#r_59046093 It's the same post. Please leave your QQ number and quote a price. Cash reward!
windows_01 Embedded System

Recommended Content

Circuit

可能感兴趣器件

EEWorld
subscription
account

EEWorld
service
account

Automotive
development
circle

About Us Customer Service Contact Information Datasheet Sitemap LatestNews


Room 1530, 15th Floor, Building B, No.18 Zhongguancun Street, Haidian District, Beijing, Postal Code: 100190 China Telephone: 008610 8235 0740

Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号