Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

Choosing between matlab and simulink

Status
Not open for further replies.

Sunayana Chakradhar

Member level 5
Joined
Oct 24, 2014
Messages
85
Helped
2
Reputation
4
Reaction score
2
Trophy points
8
Activity points
742
Hello,

I am somewhat experienced with vivado design flow. I have to design a packet processor on my Zynq 7020 FPGA. It has fragmentation, framing, parsing etc blocks in it. Is it better to use simulink for Zynq package or is it better to design it in VHDL on vivado? One of my colleagues told that "it might be better and easy to design in simulink so that on simulink the work can be divided between the OS/firmware side and hardware/FPGA side using simulink". I don't understand what is meant by this statement. Can someone clarify this.
 

Simulink will give you the option to easily look at the entire design and possibly chose which parts to put into the FPGA and which to put into the CPU. It will also give you a unified test envirnment for the two. But when you chose which part goes where it's not as simple as pressing the "generate code" button - you will then need to consider design restrictions for each part of the design.

There are some drawbacks though
1. You require a simulink and HDL coder licence as well as vivado and any HDL simulation tools. With a pure code approach you only need vivado/modelsim licences.
2. Simulink models dont play nice with version control. With HDL you can track changes - with simulink you cannot do this easily.
3. It's another tool to learn
4. You are unlikely to get as optimal solution as posible

Simulink can be great if used properly. If you're using IP that already has existing simulink integration then simulink makes slotting the peices together really easy. If you have to generate your own IP then it can be difficult to debug your simulink design on a cycle/cycle basis, especially if you are used to modelsim.

So be warned - the mathworks sales guys sell simulink as a push button solution to all of your algorithm problems. If you have history in designing FPGAs , then you might end up fighting the tool. If you have little history with FPGAs, it might give you an entry point to the market.
 

Thanks a lot for your reply.

Your statement "Simulink will give you the option to easily look at the entire design and possibly chose which parts to put into the FPGA and which to put into the CPU"

Vivado also has this option of creating IPs so as to segregate the design on Zynq PS and the PL. Will matlab/simulink help the oS guys in their work too?
 

I dont have much experience with the software side of things, but I know it can also do software code generation.
With simulink, it just generates the code for you - you still need vivado to actually compile the code.
 
Simulink is useful and easy (if well used) because you just have to draw blocks (no code needed).
In MATLAB you have to write code.

You can easily find the Mathworks hardware support packages once you have installed MATLAB or even on their web site www.mathworks.com

- - - Updated - - -

 
Last edited:

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top