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.

Trying to build a basic synthesizer in Vivado using a COE file generated from MATLAB.

Status
Not open for further replies.

slopez

Newbie
Joined
Oct 24, 2021
Messages
2
Helped
0
Reputation
0
Reaction score
0
Trophy points
1
Activity points
21
Hello,
Im having some trouble with this: Trying to build a synthesizer that outputs a value from a lookup table. I have a COE file generated in MATLAB that has 100 samples of a single sine wave; the values are all in binary.
Im trying to load this COE file into a RAM module using Vivado's built in Block Memory Generator. I have the port A option write depth set to 100 since the COE file is only populated with 100 samples (Not sure if this is how this works). When trying to have the generator build out this design, i get an error message: Inavlid COE file- Invalid Binary Value detected in the COE File: 6
I checked Line 6 and it says:

CoefData = 0000000000000000,

can anyone help or suggest a better method for pulling this off?
Trying to implement a lookup table holding sine wave data in Vivado to output waveform values. This is for a school project.

Thank you
 

Without seeing the header of your coe file, or your memory, it’s impossible to say. Maybe you’ve got your radix improperly declared.
 
after some trial and error, i went from

; XILINX CORE Generator(tm)Distributed Arithmetic FIR filter coefficient (.COE) File
; Generated by MATLAB(R) 9.9 and DSP System Toolbox 9.11.
; Generated on: 23-Oct-2021 17:38:02
Radix = 2;
Coefficient_Width = 16;
CoefData = 0000000000000000,

to

; XILINX CORE Generator(tm)Distributed Arithmetic FIR filter coefficient (.COE) File
; Generated by MATLAB(R) 9.9 and DSP System Toolbox 9.11.
; Generated on: 23-Oct-2021 17:38:02
memory_initialization_radix = 2;
;Coefficient_Width = 16
memory_initialization_vector= 0000000000000000,

and it seemed to except it.

Now the only question is how do i make a test-bench to test it?
 

How would I know? YOU wrote the code; YOU know what it’s supposed to do.

Or is this just a general question about how to write test benches?
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top