adc5g_init.m initialization script for Matlab 2010 and above. - #1
Open
cs150bf wants to merge 64 commits into
Open
adc5g_init.m initialization script for Matlab 2010 and above.#1cs150bf wants to merge 64 commits into
cs150bf wants to merge 64 commits into
Conversation
fft_biplex in the libraries contained a stale version of the biplex_core block. This caused errors with setting up the FFT family in some cases. Internal unscambler in fft_biplex moved to casper_libraries_ffts_internal. fft_biplex_init changed to fully draw the fft_biplex block with a default empty state in the library (removing the chance of fft_biplex containing i a stale block). fft now draws and simulates correctly.
cleanup commit c77818c broke adc083000x2. Added blocks back to ADCs section.
BEE2 base project iBOB base project generic pcores
also removed framebuffer as it was only used by the iBOB
biplex_cplx_unscrambler was moved to FFTs/Internal but the link to the library was not properly disabled. Initialization commands were moved to a proper script and munge_init added to disable the links.
It seems there was an idea to create an adc_lib and some blocks were moved there, but the move was abandoned part way through.
removed references to adc_lib. replaced reuse_line with add_line. replaced 'simulink/Sources/In1' with 'built-in/Inport' replaced 'simulink/Sinks/Out1' with 'built-in/Outport'
All three PFBs (only fully tested with pfb fir real though) have a new option which allows for delays to be added between the address counter and the ROMs that hold the coefficients. For designs with large channel/tap counts, this was becoming a timing bottleneck.
The input block location should be converted to lower case as well as the location found for the block with the same name. (thanks Glen)
Removed the following blocks: XAUI - Only supported BEE2 and iBOB CORR_mxfe CORR_fr CORR_adc CORR_dac iBOB_lwip frame_buffer vsi dac_iBOB sram Edited the following blocks: XSG core config - Removed iBOB, BEE2 and CORR options GPIOs - Removed iBOB, BEE2 and CORR options DRAM - removed support for multiple DIMMs
removing the scripts associated with the blocks removed in the previous commit
Also removed older unused versions
This ADC is the e2v AT84AS008 ADC, with a e2v AT84CS001 1:2 DEMUX. The yellow block does another 1:2 DEMUX stage, to yield a 1:4 DEMUX.
The XAUI block is actually still supported on the ROACH boards
…ng on the demux by 2 stage. Updated ADC1x1800-10 interface to rather use ISERDES I/O to ease timing on the demux by 2 stage. The interface uses a modified version of the ADC 5G demux by 1 interface.
renamed software registers from gpio_data_oe to sfp_gpio_data_oe.
A bus cycle is executed twice, because the cmnd_got signal is still active when the slave ack. This causes slaves that traditionally uses byte enable active [3] to control bus cycles to execute twice. On the epb32 the byte enables are all active at the same time. This fix will ensure that only one cycle is initiated. Do NOT use BE[*] signals on ROACH2 for flow control.
Conflicts: xps_library/xps_library.mdl
empty lines in the ROACH2 core_info.tab file was causing errors.
Default install locations. Fewer environment variables. Fix to new Xilinx paths.
P37 -> N31 (zdok1.76 or 38n) N36 -> M31 (zdok1.75 or 38p) M37 -> P37 (zdok0.24 or 12n) M36 -> N36 (zdok0.23 pr 12p) N31 -> M32 (zdok1.58 or 29n) M31 -> M33 (zdok1.57 or 29p) M32 -> M37 (zdok0.4 or 2n) M33 -> M36 (zdok0.3 or 2p) M34 -> L37 (zdok0.44 or 22n) L34 -> K37 (zdok0.43 or 22p) L37 -> M34 (zdok0.28 or 14n) K37 -> L34 (zdok0.27 or 14p)
(1) opb_v20_.. pcore: mpd file needs the virtex6 line.... the one in pcores_for_ise13 is missing this particular line and it won't work for ROACH2. Symptom: error messages complaining opb pcore not supported for architecture virtex6 something) (2) mkbof_64 doesn't work for me... ubuntu/redhat or something else? Symptom: bit file can be generated without problem, but bof file cannot be generated (error message: GLIC? something something is missing, lib, mkbof_64, blah blah)
triggered_counter contains an outdated edge_detect block Some other things to check (trivial...): 1) pulse_ext contains a posedge block, a good time to change that? 2) .... snap blocks? 3) (!) still have no clue about the '\n' in block path thing...> <
(But what was the solution to the problem that it complained XPS failed? > <)
…nd* error message that I saw (after .bit file is succesfully generated). See also: line 639 (the error message) line 617-633 (this commit) line 591 (other places the uppercased 'ROACH', 'ROACH2' show up)
+ ROACH fix (sys_clk2x_mmcm)
…y the version of CASPER library that they are using
…ib_devel Conflicts: xps_lib/XPS_ROACH2_base/pcores/gbe_udp_v1_00_a/hdl/verilog/gbe_cpu_attach.v xps_library/xps_library.mdl
…ber, and coefficients are symmetric
…ter, but this is clean and I think solves our problem for now.
…ter, but this is clean and I think solves our problem for now. [re-committing because the previous commit was messed-up, didn't expected some changes has already been made to the file]
…erge branch 'master' of github.com:cs150bf/mlib_devel Conflicts: casper_library/dec_fir_init.m
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Only adc5g_init.m (sorry)
To fit changes in Simulink Downsample block
(The Simulink block "Downsample" has went through multiple changes since 2009, and its default parameters have actually changed)
Default value in R2009b:

Default value in R2012a:

Set value to:

Effect:

Some concerns
(1) The Downsample block is from Simulink block set and it has gone through some major changes since 2009. The block parameters, are implemented as pop up options in the Mask Dialogue and evaluated to integers, which is kind of awkward because it's hard for us to do something that's robust enough to stand up to future changes done by Simulink... (Say, now 'RateOptions' = 0 refers to 'Enforce single-rate processing', but could it be always the case?)
(2) Getting the Matlab version number is currently awkwardly implemented... I don't know if there's a dedicated function similar to get_xlVersion() for xilinx that exists somewhere in Casper Library, or is there some traditional way that we deal with blocks that has dependency on Simulink version... Don't know, but right now the implementation goes like this:
But as you can see, this is quite awkward and vulnerable for future changes of Matlab
(3) The extra parameters for designs opened with Matlab version newer than 2009 .... they are attempting to stay consistent with pre-2009 versions, by preserving the old default values. But ... (see screenshots for the default values of this Downsample block for pre-2009 version and for 2012 version)