FPGA Intellectual Property
PCI Express*, Networking and Connectivity, Memory Interfaces, DSP IP, and Video IP
6424 Discussions

problem with input block and also replace_block question

Honored Contributor II

i am brand new to DSP builder, to be honest even to concepts in dsp also...and really have only taken one course in signal processing... 


i constructed the model attached as per the handbook on FIR compiler, from DSPbuilder vol 2. i don't understand why my signal after the dsp-builder input block is not showing up on the input scope 3. shouldn't the signed fractional specification for 3 bits with length of 8 good enough? what am i doing wrong? i feel as though i am lost on this problem. 


the signal sources: sine source: sample time : 1/1e7 

freq @ 500MHZ 

Random Source: sample time: 1/1e7 


the other question that i have is (this is more a simulink question): how would i refer to dsp-builder block or library if i want to replace a bunch of multipliers and adders that were generated with FIRtool from matlab. 


the replace_block syntax: 


replace_block('sys', 'old_blk', 'new_blk') would have to be directed towards the new dsp builder blocks that are to replace simulink blocks. what's the correct syntax for that? thanks for the help 


By the way the specs for the filter are :  

LP cutoff @ 1.25MHz Sampling...at 10MHZ these are default values... i didn't even change them from the compiler settings when i opened it up. 


sorry i am having trouble uploading on altera's servers. i will try to do it later from home
0 Kudos
2 Replies
Honored Contributor II

Your Random Source block has a very low sample time. By default the DSP Builder blocks will have a sample time of 1. If you want to make their sample time smaller, then drop a clock block into the design and set its sample time. You may then need to specify a clock on your DSP Builder input and constant blocks. 


In addition I think 3 fractional bits is probably insufficient to sample your signal. The smallest value you could sample with that would be 0.125, which may still be outside your input range. 


To replace every simulink Product block with a DSP Builder Product block you want 

replace_block('sys', 'Product', 'allblocks_alteradspbuilder2/Product', 'Product') 


If you're not sure what the full name of a block is, then drop it into your design, click on it and type: 

get(gcbh, 'ReferenceBlock') 


Generally it will be allblocks_alteradspbuilder2/<blockname>. As the help for this command says, you cannot undo the effects of this command so make sure you save your design first.
0 Kudos
Honored Contributor II

very grateful for this insight.... i will try tonight if i am still not tired by the time i get home. thanks again..will let you know

0 Kudos