MMCM ISERDESE1 IODELAYE1 dynamic reconfiguration

Hello,
Is there a way to dynamically reconfigure parameters (generics) of an MMCM, ISERDESE1, and IODELAYE1 for Virtex 6 FPGA. Meaning, there are many parameters that can be set in the HDL. If I assign a register to modify these parameters at run-time rather than at compile time, is that possible?
For example what I want to do is change the taps of IODELAYE1 of Virtex 6. There are 64 taps for input delay and output delay. I want to change the taps for input delay on the fly without having to re-compile the code over and over again.
Thanks

You have to read the user guides for these devices. The answer for most things is "yes", but the mechanism is pretty different for each device (and few of them are done the way you describe).
The IDELAY  and ODELAY have mechanisms for dynamically adjusting the tap settings. Depending on the architecture (V4/V5/V6/7 series, and even in its own bizarre way S6), you can increment or decrement the tap settings by one count at a time on the fly (every couple of clocks). In the later ones (including V6)  you can also force a parallel reload of the tap values by providing a 5 bit value for the tap setting. These are all documented in the I/O User Guide for your device. Also, in the V6 there are only 32 taps available (not 64, as you say in your message).  See UG361 for an entire section on the IODELAY.
For the MMCM it depends on what you want to adjust. There is a single adjustable phase shifter that can be incremented/decremented in a similar manner to the IDELAY. See the "Dynamic Phase Shift Interface" in UG362.
Other values of the MMCM can be reprogrammed, but to do that you need to use the Dynamic Reconfiguration Port (DRP) of the DCM. This requires you to implement a small controller to address the registers within the MMCM to change the values, which can be fairly complex to do. You also need to reset the MMCM after using the DRP to allow it to re-lock (so it can't be done "live").
Avrum

Similar Messages

  • CST and Dynamic Reconfiguration

    I have installed the Configuration and Service Tracker add on for SMC 3.0 update 4. Works great except for systems that support Dynamic Reconfiguration. These boxes sporadically send CST alerts that a hardware change has been made. The comment is Dynamic reconfiguration changes. Is there something I'm missing? I cant see anyplace to set this in the CST console

    Insufficient security privilege to load module.Agent in remote server context.
    And the user name is a member of the correct groups... lol

  • Support for Memory Dynamic Reconfiguration Capability

    Hi,
    one of the exiting new features of the new Solaris release is "Memory Dynamic Reconfiguration Capability" for logical domains.
    but , will it work with ldom manager 1.3 or do we have to wait for a new release of ldom manager ( and firmware maybe ? ) to support it?
    if so - is the new release going to be release soon ?
    thanks in advance,
    Ori

    I, too, saw the announcement for Solaris 10 9/10 and the comments about ldm 2.0 but have not seen any comments on any of the support forums. I wonder if we lost the interest of Oracle and need to find a new source for ldm information.
    have a good day,
    Glen

  • How to audit Dynamically Reconfigured domains?

    Hi,
    I hope someone can help me.
    Is there a way to know when domains have been added or removed using dynamic reconfiguration (DR)?
    Is there a Log File or a record of performance changes that will indicate when/ if DR has been done?
    Thank you so much in advance,
    E

    Hi,
    I hope someone can help me.
    Is there a way to know when domains have been added or removed using dynamic reconfiguration (DR)?
    Is there a Log File or a record of performance changes that will indicate when/ if DR has been done?
    Thank you so much in advance,
    E

  • Cascade 2 PLL_ADV in spartan-6 FPGA and dynamic reconfigure

    Can I cascade 2 PLL_ADV in spartan-6(XC6SLX25T) FPGA  and dynamic reconfigure them?

    Hi, , Of course the two PLL_ADV meet the requirements for VCO frequency. The output of first PLL_ADV connect to a BUFG and then to the CLKIN of the second PLL_ADV.
    You mean that if change the first PLL_ADV output with dynamic reconfigure, I must reset the second PLL_ADV and then dynamic reconfigure it ?

  • Reports Server - dynamic reconfiguration needed for long-running reports

    We have a need to permit users to submit large reports via scheduler from the hours of 8 pm to 2 am.
    These reports currently fail due to the daytime configuration limits on the row count and the elapsed time.
    I guess effectively we need to stop, change the config, and restart the reporting servers to expand the day-time row and elapsed time limits that are imposed.
    Can this be done thru the CMC API or is there a better way to accomodate this need via Powerscript or some other mechanism ?

    Hi,
    these Groups are virtual. You dont need any additional Hardware. The callenge here would be that you cant switch them on or off. If they activated they are activated.
    The only thing i could imagine would be custom code which enables the servers and disable the servers. This would be customization, no default options are here available.
    Regards
    -Seb.

  • Dynamic Reconfiguration on a schedule

    We have an M5000, 8 CPUs and 64GB memory. We are testing it with two applications that have very different usage patterns. App A is very busy during the day, App B does it's processing at night. We would like to set up 2 domains and have 7 XSBs dedicated to App A and 1 XSB to App B, then automatically switch 6 of the XSBs to App B at some point during the evening.
    Can this be scripted using RCM? Is it possible to do this?
    Thanks in advance.
    Mike
    Edited by: mi5key on Feb 3, 2009 1:41 PM

    Brian, I cannot find that note either, try posting your question in the APEX forum, this forum is for Oracle Portal questions.
    Cheers,
    Mick.

  • Dynamically reconfiguring P - NOT!

    I have several paragraphs.
    <P> is styled on my external CSS style sheet.
    I have a some paragraphs in some documents that I want to
    make BOLD so I
    select the paragraph and click the
    on the properties panel.
    Instead of making that paragraph <STRONG> - DWCS4
    changed my stylesheet
    definition of <P> so that all of the paragraphs in all
    documents that use
    that stylesheet have all of the paragraphs BOLD...
    I've just been going into the code and editing the special
    <P><strong>paragrphs</strong></P>
    Don't know if it's a bug or if I need to change some kind of
    preference
    setting or something.
    It's just that today, this time, it annoyed me...
    Been putting in some long hours on this stuff and am tired.
    Thank you for listening to my rant...
    I'm going to go tell the wife how pretty she is and go to
    sleep.
    Tomorrow I'll be more patient and make fewer mistakes.
    Dan H.

    >Are you sitting comfortably? Then I'll begin...
    Wow! "Listen with Mother" - showing your age David (oh dear,
    me too)
    Jo
    "David Powers" <[email protected]> wrote in message
    news:[email protected]...
    > [email protected] wrote:
    >
    >> Instead of making that paragraph <STRONG> -
    DWCS4 changed my stylesheet
    >> definition of <P> so that all of the
    paragraphs in all documents that use
    >> that stylesheet have all of the paragraphs BOLD...
    >
    > Yes, that's exactly what's meant to happen. It's not a
    bug. Are you
    > sitting comfortably? Then I'll begin...
    >
    > In Dreamweaver CS4, there are two buttons on the left of
    the Property
    > inspector: HTML and CSS. When the HTML button is
    selected, clicking the
    > Bold button inserts the HTML <strong> tags. When
    the CSS button is
    > selected, clicking the Bold button uses the CSS property
    font-weight:
    > bold.
    >
    > So, HTML button + B: <strong>
    > CSS button + B: font-weight:bold;
    >
    > When using the HTML button everything is as you have
    been used to in the
    > past, but the CSS button displays a new field called
    Targeted Rule. The
    > reason all your paragraphs have been made bold is
    because you clicked the
    > Bold button when Targeted Rule displayed <p>.
    However, if you hadn't
    > already created a style rule for paragraphs, Targeted
    Rule would have
    > displayed whichever rule applied to the current
    selection, and any change
    > would apply to all elements covered by the same rule. If
    no rules applied
    > to the current selection, you would be prompted to
    create a new CSS rule.
    >
    > The Targeted Rule field governs everything that happens
    when the CSS
    > button is selected in the Property inspector. When you
    first get caught
    > out like this, you think WTF. But once you get used to
    the concept, you'll
    > discover that the Targeted Rule field is very useful.
    For example, you
    > could change the font-size or colour of all paragraphs
    very quickly
    > without needing to open the style sheet.
    >
    > You can click the down arrow to the right of the
    Targeted Rule field, and
    > select another rule, <New CSS Rule>, or <New
    Inline Rule>.
    >
    > By the way, I hope your wife appreciated being told she
    was pretty. ;-)
    >
    > --
    > David Powers
    > Adobe Community Expert, Dreamweaver
    >
    http://foundationphp.com

  • Utilisation Dynamic Reconfiguration on M4000

    Hi
    We have added CPU and Memory in our M4000, and these component have added to
    domain 0.
    Now we want to move these component to domain 1 or put it in "reserve".
    Can you explain me how to do this operation ?
    It's not me who has installed the domain 0 and I never use the DR command in XSCF.
    I have attached a file containing the result of commands
    showhardconf -M
    version -c cmu -v
    showdcl -v -a
    I see that domain 1 is created but there is nothing on it. The new CPU are in
    the server and are affected and used by domain 0.
    If I well understand, I need to move from domain 0 to domain 1 these
    components :
    CPUM#1-CHIP#0
    CPUM#1-CHIP#1
    MEMB#2
    MEMB#3
    Is it correct ?
    Can you help me to make these operations ?
    Regards.
    XSCF> showhardconf -M
    SPARC Enterprise M4000;
    + Serial:BCF094301F; Operator_Panel_Switch:Locked;
    + Power_Supply_System:Single; SCF-ID:XSCF#0;
    + System_Power:On; System_Phase:Cabinet Power On;
    Domain#0 Domain_Status:Running;
    MBU_A Status:Normal; Ver:0101h; Serial:BC094000F9 ;
    + FRU-Part-Number:CF00541-0893 06 /541-0893-06 ;
    + Memory_Size:32 GB;
    CPUM#0-CHIP#0 Status:Normal; Ver:0401h; Serial:PP0940029A ;
    + FRU-Part-Number:CA06761-D202 E0 /375-3568-05 ;
    + Freq:2.400 GHz; Type:32;
    + Core:4; Strand:2;
    CPUM#0-CHIP#1 Status:Normal; Ver:0401h; Serial:PP0940029A ;
    + FRU-Part-Number:CA06761-D202 E0 /375-3568-05 ;
    + Freq:2.400 GHz; Type:32;
    + Core:4; Strand:2;
    CPUM#1-CHIP#0 Status:Normal; Ver:0401h; Serial:PP082604E1 ;
    + FRU-Part-Number:CA06761-D202 C0 /375-3568-03 ;
    + Freq:2.400 GHz; Type:32;
    + Core:4; Strand:2;
    CPUM#1-CHIP#1 Status:Normal; Ver:0401h; Serial:PP082604E1 ;
    + FRU-Part-Number:CA06761-D202 C0 /375-3568-03 ;
    + Freq:2.400 GHz; Type:32;
    + Core:4; Strand:2;
    MEMB#0 Status:Normal; Ver:0101h; Serial:BF0939DKGP ;
    + FRU-Part-Number:CF00541-0545 08 /541-0545-08 ;
    MEM#0A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-4216fcd3;
    + Type:2A; Size:2 GB;
    MEM#1A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-438843df;
    + Type:2A; Size:2 GB;
    MEM#2A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-4216fd3d;
    + Type:2A; Size:2 GB;
    MEM#3A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-4216fcd0;
    + Type:2A; Size:2 GB;
    MEMB#1 Status:Normal; Ver:0101h; Serial:BF0938DAM1 ;
    + FRU-Part-Number:CF00541-0545 08 /541-0545-08 ;
    MEM#0A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-4216fd39;
    + Type:2A; Size:2 GB;
    MEM#1A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-4216fcd9;
    + Type:2A; Size:2 GB;
    MEM#2A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-4216fd34;
    + Type:2A; Size:2 GB;
    MEM#3A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-4216fd78;
    + Type:2A; Size:2 GB;
    MEMB#2 Status:Normal; Ver:0101h; Serial:BF0949J55D ;
    + FRU-Part-Number:CF00541-0545 09 /541-0545-09 ;
    MEM#0A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-5227fcee;
    + Type:2A; Size:2 GB;
    MEM#1A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-52257d0f;
    + Type:2A; Size:2 GB;
    MEM#2A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-52257ccc;
    + Type:2A; Size:2 GB;
    MEM#3A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-5227fd4e;
    + Type:2A; Size:2 GB;
    MEMB#3 Status:Normal; Ver:0101h; Serial:BF0950JH66 ;
    + FRU-Part-Number:CF00541-0545 09 /541-0545-09 ;
    MEM#0A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-5078aa69;
    + Type:2A; Size:2 GB;
    MEM#1A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-5227eb0c;
    + Type:2A; Size:2 GB;
    MEM#2A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-5078aa63;
    + Type:2A; Size:2 GB;
    MEM#3A Status:Normal;
    + Code:ce0000000000000001M3 93T5660QZA-CE6 4151-5078aa61;
    + Type:2A; Size:2 GB;
    DDC_A#0 Status:Normal;
    DDC_A#1 Status:Normal;
    DDC_B#0 Status:Normal;
    IOU#0 Status:Normal; Ver:0101h; Serial:BF09196U1B ;
    + FRU-Part-Number:CF00541-2240 04 /541-2240-04 ;
    DDC_A#0 Status:Normal;
    DDCR Status:Normal;
    DDC_B#0 Status:Normal;
    PCI#3 Name_Property:SUNW,qlc; Card_Type:Other;
    PCI#4 Name_Property:SUNW,qlc; Card_Type:Other;
    XSCFU Status:Normal,Active; Ver:0101h; Serial:BF0937CN14 ;
    + FRU-Part-Number:CF00541-0481 04 /541-0481-04 ;
    OPNL Status:Normal; Ver:0101h; Serial:BF0937CV1U ;
    + FRU-Part-Number:CF00541-0850 06 /541-0850-06 ;
    PSU#0 Status:Normal; Serial:1357FYG-0911AD02JD;
    + FRU-Part-Number:CF00300-2011 0202 /300-2011-02-02;
    + Power_Status:On; AC:200 V;
    PSU#1 Status:Normal; Serial:1357FYG-0911AD02GW;
    + FRU-Part-Number:CF00300-2011 0202 /300-2011-02-02;
    + Power_Status:On; AC:200 V;
    FAN_A#0 Status:Normal;
    FAN_A#1 Status:Normal;
    FANBP_B Status:Normal; Ver:0401h; Serial:BF0937CRU9 ;
    + FRU-Part-Number:CF00541-3098 01 /541-3098-01 ;
    FAN_B#0 Status:Normal;
    FAN_B#1 Status:Normal;
    XSCF> version -c cmu -v
    DomainID 0: 02.11.0000
    DomainID 1: 02.11.0000
    XSB#00-0: 55.55.5535(Reserve) 02.11.0000(Current)
    XSB#00-1: 55.55.5535(Current) 02.11.0000(Reserve)
    XSB#00-2: 55.55.5535(Current) 02.11.0000(Reserve)
    XSB#00-3: 55.55.5535(Current) 02.11.0000(Reserve)
    XSCF> showdcl -v -a
    DID LSB XSB Status No-Mem No-IO Float Cfg-policy
    00 Running FRU
    00 00-0 False False False
    01 -
    02 -
    03 -
    04 -
    05 -
    06 -
    07 -
    08 -
    09 -
    10 -
    11 -
    12 -
    13 -
    14 -
    15 -
    _______________________________________________

    Hi.
    Some usefull links:
    http://docs.oracle.com/cd/E19855-01/index.html
    http://docs.oracle.com/cd/E19855-01/E25381/E25381.pdf
    http://docs.oracle.com/cd/E19855-01/821-2796-11/821-2796-11.pdf
    Not clear what you want as result ( create new domain or just disable some components).
    For Servers M-series smallest part for DR or Domain is XSB.
    XSB must include : CPU, Memory, IO.
    For M4000 2 domain's can be created only at case you configure XSF at quad-mode.
    ( At this moment it't look like you have Uniboard mode)
    After this you will have next XSB:
    ( http://docs.oracle.com/cd/E19855-01/E21618/E21618.pdf
    Table 4-2 page 58 )
    00-0 CPUM#0-CHIP#0 MEMB#0 Disks; GbE; PCI#0, PCI#1, PCI#2
    00-1 CPUM#0-CHIP#1 MEMB#1 PCI#3, PCI#4
    00-2 CPUM#1-CHIP#0 MEMB#2 None
    00-3 CPUM#1-CHIP#1 MEMB#3 None
    You have phisical installed:
    CPUM#1 ; CPUM#2 ; MEMB0 - MEMB3 ; FC Card at slot PCI3 ; PCI4.
    So it look like you can't create second domain with network interfaces.
    You can just limit some resources for Domain 0.
    Last docs provide some examples and step by step instructions for configure domain.
    Regards,
    Nikolay.

  • Dynamic Reconfiguration

    Hi,
    When a node in a RAC crashes, it is told that the GRD portion of this node is re-distributed among the surviving nodes.
    But is there any place this GRD info is backed up so that it can be re-distributed ?
    Thx.

    It's not backed up in entirety. Each node in the cluster would know, on which node a given block is mastered. If a node on which a given block is mastered crashes, the other node knows that the block was mastered on the departing node and would remaster it.
    HTH
    Thanks
    -Chandra

  • 802.1x dynamic vlan assignment using ACS 4.2

    Hi
    we have 10 switches 2960 configured with 802.1x authentication against ACS server 4.2.
    we have 2 vlans configured on the switches for administrator and endusers. the end user vlan id is 10 and the administartor vlan is is 100.
    we need to apply the following scenario, if the enduser PC - that is connected to vlan 10 - has an issue and the administrator will login to the PC with the administrator account to fix that issue, the switch should dynamically reconfigure the port with the administrator vlan ( 100 ) .
    is the above scenario doable using dot1x with the ACS server?
    waiting your replies
    Mohamed

    Hi,
    I have the following scenario
    2 bulidings with multiple floor
    Each floor should be in different VLAN.
    The network should be authenticated with 802.1x and each switch port should be assigned with dynamic VLAN from ACS.
    Each
    user should be able to connect and roam around between any building.
    when ever a user is connecting his laptop to any floor, he should be
    made part of that respective vlan. It is not requred to have the same
    IP rage to be allocated, but the dynamic VLAN should be based on the
    switch port location.
    Can
    I configure ACS in such a way that, the ACS will allocate dynamic VLAN
    for every 802.1x authentication  based on the Network Device Group.
    Please refer the attached diagram
    Hi,
    Check out the below link for your requirement for dynamic vlan assignement using ACS
    http://www.ciscosystems.com/en/US/tech/tk722/tk809/technologies_configuration_example09186a008076317c.shtml
    Hope to Help !!
    Ganesh.H
    Remember to rate the helpful post

  • Cascade 2 PLL_ADV in spartan-6 FPGA and dynamic configure

    Can I cascade 2 PLL_ADV in spartan-6(XC6SLX25T) FPGA  and dynamic configure them?

    Hi, , Of course the two PLL_ADV meet the requirements for VCO frequency. The output of first PLL_ADV connect to a BUFG and then to the CLKIN of the second PLL_ADV.
    You mean that if change the first PLL_ADV output with dynamic reconfigure, I must reset the second PLL_ADV and then dynamic reconfigure it ?

  • Clock Multiplication of a clock of unkown frequency

    I am building serializer and need to create a clock.  I know that clock has to faster than the parallel clock that I have in my design.  The problem I have is that I don't know what the frequency of the clock for the parallel data and the frequency may change.  I have come up with a solution for discovering what the frequency of the parallel clock is, but I do not know how to generate a clock that is fast enough.  I am only familiar with clock division.  Is there a way that I could use the clock wizard IP?  Any help would be greatly appreciated.
    I am using Vivado 2015.1 and the board that I am using is the KC705. 
    ~David Schumerth

    You have to be very careful with this...
    The MMCM is based on a VCO. The VCO frequency is determined by a formula - Fvco = Fin *M/D, where M and D are dividers that are (normally) set statically by the bitstream. As Fin changes, the resulting VCO frequency and hence output frequencies will scale with Fin. However, this can only be done within legal ranges of the VCO (and the Phase Frequncy Detector - PFD). Both of these have defined maximum and minimum values - you cannot go outside either range.
    The range of Fvco (depending on speed grade) is around 2:1 (or 2.5:1 in faster speedgrades). So if your input frequency changes by more than this ratio, the VCO will not be able to lock at all frequencies with the same M and D values.
    If you need to lock at wider frequency ranges or if you need to create constant output frequencies regardless of Fin, then you will need to dynamically program the MMCM; change the M and D values (and O values) depening on your Fin. To do so, you will have to have some mechanism of measuring the input frequency (which will need at least one constant frequency clock that does not come from or through the MMCM), and then use the Dynamic Reconfiguration Port (DRP) of the MMCM to change the divider values. This is not trivially easy to do, as the DRP provides access to blocks of MMCM registers that must all be set consistently for the mode change. Furthermore, the MMCM must be reset after DRP changes (so the clock will stop and have to wait for the MMCM to relock).
    This will all require a fairly complicated state machine or a small microcontroller to manage... This is all well outside the scope of what the clocking wizard will do for you - you will have to design all this stuff yourself and manually instantiate the MMCM (along with the controller for managing the DRP).
    Avrum

  • Can't simulate Clocking Wizard in ISE 14.7

    Hi!
    I have developed a simple design for a VGA module where I need to produce a 40Mhz clock out of 100Mhz input for an Artix-7 (XC7A100T-CSG324) on an Digilent Nexys4 evaluation board. In order to aquire this clock I have used a Clock Wizard for a DCM. I have synthesise the desing, upload the bit file and everything works fine, as expected on the board.
    I would like to extend the design and add more functionality. I order to achieve this, I need a test bench in parallel that will help me to continue the work. I have started by implementing the simplest test bech just to make sure it works. iSim doesn't want to start and the errors suggests that it doesn't see all the ports of the DCM:
    ERROR:HDLCompiler:25 - "C:/Users/Popa/Desktop/FPGA/NEXYS4/DESIGNS/VGA/VGA_top.v" Line 131: Module <DCM_default> does not have a port named <CLK_IN1>.
    ERROR:HDLCompiler:25 - "C:/Users/Popa/Desktop/FPGA/NEXYS4/DESIGNS/VGA/VGA_top.v" Line 133: Module <DCM_default> does not have a port named <CLK_OUT1>.
    ERROR:HDLCompiler:25 - "C:/Users/Popa/Desktop/FPGA/NEXYS4/DESIGNS/VGA/VGA_top.v" Line 134: Module <DCM_default> does not have a port named <CLK_OUT2>.
    ERROR:HDLCompiler:25 - "C:/Users/Popa/Desktop/FPGA/NEXYS4/DESIGNS/VGA/VGA_top.v" Line 136: Module <DCM_default> does not have a port named <RESET>.
    ERROR:Simulator:778 - Static elaboration of top level Verilog design unit(s) in library work failed
     I don't understand what I'm doing wrong...the same code synthesize and produce succesfully the bit file and everything works fine but I can't simulate it. I'm using ISE WebPACK Design 14.7 (P.20131013).
    My test bench:
    module VGA_top_tb(
    reg clk = 1'b0;
    reg reset = 1'b0;
    initial begin
    #5 reset = 1;
    #30 reset = 0;
    end
    always begin
    #5 clk = !clk;
    end
    VGA_top VGA_DUT(
    //inputs
    .clk (clk),
    .reset_h (reset),
    .up_btn (1'b0),
    .down_btn (1'b0),
    .left_btn (1'b0),
    .right_btn (1'b0),
    //outputs
    .red (),
    .blue (),
    .green (),
    .hs (),
    .vs ()
    endmodule
    DCM code:
    `timescale 1ps/1ps
    (* CORE_GENERATION_INFO = "DCM,clk_wiz_v3_6,{component_name=DCM,use_phase_alignment=true,use_min_o_jitter=true,use_max_i_jitter=false,use_dyn_phase_shift=false,use_inclk_switchover=false,use_dyn_reconfig=false,feedback_source=FDBK_AUTO,primtype_sel=MMCM_ADV,num_out_clk=2,clkin1_period=10.000,clkin2_period=25.0,use_power_down=false,use_reset=true,use_locked=true,use_inclk_stopped=false,use_status=false,use_freeze=false,use_clk_valid=false,feedback_type=SINGLE,clock_mgr_type=MANUAL,manual_override=false}" *)
    module DCM
    (// Clock in ports
    input CLK_IN1,
    // Clock out ports
    output CLK_OUT1,
    output CLK_OUT2,
    // Status and control signals
    input RESET,
    output LOCKED
    // Input buffering
    IBUFG clkin1_buf
    (.O (clkin1),
    .I (CLK_IN1));
    // Clocking primitive
    // Instantiation of the MMCM primitive
    // * Unused inputs are tied off
    // * Unused outputs are labeled unused
    wire [15:0] do_unused;
    wire drdy_unused;
    wire psdone_unused;
    wire clkfbout;
    wire clkfbout_buf;
    wire clkfboutb_unused;
    wire clkout0b_unused;
    wire clkout1b_unused;
    wire clkout2_unused;
    wire clkout2b_unused;
    wire clkout3_unused;
    wire clkout3b_unused;
    wire clkout4_unused;
    wire clkout5_unused;
    wire clkout6_unused;
    wire clkfbstopped_unused;
    wire clkinstopped_unused;
    PLLE2_ADV
    #(.BANDWIDTH ("HIGH"),
    .COMPENSATION ("ZHOLD"),
    .DIVCLK_DIVIDE (1),
    .CLKFBOUT_MULT (20),
    .CLKFBOUT_PHASE (0.000),
    .CLKOUT0_DIVIDE (20),
    .CLKOUT0_PHASE (0.000),
    .CLKOUT0_DUTY_CYCLE (0.500),
    .CLKOUT1_DIVIDE (50),
    .CLKOUT1_PHASE (0.000),
    .CLKOUT1_DUTY_CYCLE (0.500),
    .CLKIN1_PERIOD (10.000),
    .REF_JITTER1 (0.010))
    plle2_adv_inst
    // Output clocks
    (.CLKFBOUT (clkfbout),
    .CLKOUT0 (clkout0),
    .CLKOUT1 (clkout1),
    .CLKOUT2 (clkout2_unused),
    .CLKOUT3 (clkout3_unused),
    .CLKOUT4 (clkout4_unused),
    .CLKOUT5 (clkout5_unused),
    // Input clock control
    .CLKFBIN (clkfbout_buf),
    .CLKIN1 (clkin1),
    .CLKIN2 (1'b0),
    // Tied to always select the primary input clock
    .CLKINSEL (1'b1),
    // Ports for dynamic reconfiguration
    .DADDR (7'h0),
    .DCLK (1'b0),
    .DEN (1'b0),
    .DI (16'h0),
    .DO (do_unused),
    .DRDY (drdy_unused),
    .DWE (1'b0),
    // Other control and status signals
    .LOCKED (LOCKED),
    .PWRDWN (1'b0),
    .RST (RESET));
    // Output buffering
    BUFG clkf_buf
    (.O (clkfbout_buf),
    .I (clkfbout));
    BUFG clkout1_buf
    (.O (CLK_OUT1),
    .I (clkout0));
    BUFG clkout2_buf
    (.O (CLK_OUT2),
    .I (clkout1));
    endmodule
    Thanks!

    Hi Gabor!
    Thanks for your reply. I have noticed your observation that the naming of the DCM is different in the error message. I have re-name it before I post it in here but nothing changed. I have also tried "re-run all" to start the simulation but with no success. 
    In the end, I have manually removed the DCM instance and created a new one with the same parameters. This seems to solve the issue. Now works both on the board and in simulations. I'm not entirely sure what was the problem in order to avoid it next time.
    Thanks for your help!

  • How do I use Sun Web Server 7.0u1 reverse proxy to change public URLs?

    Some of our installations use the Sun Web Server 7.0 (update 1, usually)
    for hosting some of the public resource and reverse-proxying other parts
    of the URI namespace from other backend servers (content, application
    and other types of servers).
    So far every type of backend server served a unique part of the namespace
    and there was no collision of names, and the backend resources were
    published in a one-to-one manner. That is, a backend resource like, say,
    http://appserver:8080/content/page.html would be published in the internet
    as http://www.publicsite.com/content/page.html
    I was recently asked to research whether we can rename some parts of
    the public URI namespace, to publish some or all resources as, say,
    http://www.publicsite.com/data/page.html while using the same backend
    resources.
    Another quest, possibly related in solution, was to make a tidy url for the
    first page the user opens of the site. That is, in the current solution when
    a visitor types the url "www.publicsite.com" in his or her browser, our web
    server returns an HTTP-302 redirect to the actual first page URL, so the
    browser sends a second request (and changes the URL in its location bar).
    One customer said that it is not "tidy". They don't want the URL to change
    right upon first rendering the page. They want the root page to be rendered
    instantly i the first HTTP request.
    So far I found that I can't solve these problems. I believe these problems
    share a solution because it relies on ability to control the actual URI strings
    requested by Sun Web Server from backend servers.
    Some details follow, now:
    It seems that the reverse proxy (Service fn="service-passthrough") takes
    only the $uri value which was originally requested by the browser. I didn't
    yet manage to override this value while processing a request, not even if
    I "restart" a request. Turning the error log up to "finest" I see that even
    when making the "service-passthrough" operation, the Sun Web Server
    still remembers that the request was for "/test" (in my test case below);
    it does indeed ask the backend server for an URI "/test" and that fails.
    [04/Mar/2009:21:45:34] finest (25095) www.publicsite.com: for host xx.xx.xx.83
    trying to GET /content/MainPage.html while trying to GET /test, func_exec reports:
    fn="service-passthrough" rewrite-host="true" rewrite-location="true"
    servers="http://10.16.2.127:8080" Directive="Service" DaemonPool="2b1348"
    returned 0 (REQ_PROCEED)My obj.conf file currently has simple clauses like this:
    # this causes /content/* to be taken from another (backend) server
    NameTrans fn="assign-name" from="/content" name="content-test" nostat="/content"
    # this causes requests to site root to be HTTP-redirected to a certain page URI
    <If $uri =~ '^/$'>
        NameTrans fn="redirect"
            url="http://www.publicsite.com/content/MainPage.html"
    </If>
    <Object name="content-test">
    ### This maps http://public/content/* to http://10.16.2.127:8080/content/*
    ### Somehow the desired solution should instead map http://public/data/* to http://10.16.2.127:8080/content/*
        Service fn="service-passthrough" rewrite-host="true" rewrite-location="true" servers="http://10.16.2.127:8080"
        Service fn="set-variable" set-srvhdrs="host=www.publicsite.com:80"
    </Object>
    I have also tried "restart"ing the request like this:
        NameTrans fn="restart" uri="/data"or desperately trying to set the new request uri like this:
        Service fn="set-variable"  uri="/magnoliaPublic/Main.html"Thanks for any ideas (including a statement whether this can be done at all
    in some version of Sun Web Server 7.0 or its opensourced siblings) ;)
    //Jim

    Some of our installations use the Sun Web Server 7.0 (update 1, usually)please plan on installing the latest service pack - 7.0 Update 4. these updates addresses potentially critical bug fixes.
    I was recently asked to research whether we can rename some parts of
    the public URI namespace, to publish some or all resources as, say,
    http://www.publicsite.com/data/page.html while using the same backend
    resources.> now, if all the resources are under say /data, then how will you know which pages need to be sent to which back end resources. i guess, you probably meant to check for /data/page.html should go to <back-end>/content/page.html
    yes, you could do something like
    - edit your corresponding obj.conf (<hostname>-obj.conf or obj.conf depending on your configuration)
    <Object name=¨default¨>
    <If $uri = ¨/page/¨>
    #move this nametrans SAF (for map directive - which is for reverse proxy within <if> clause)
    NameTrans.. fn=map
    </If
    </Object>
    and you could do https-<hostname>/bin/reconfig (dynamic reconfiguration) to check out if this is what you wanted. also, you might want to move config/server.xml <log-level> to finest and do your configuration . this way, you would get enough information on what is going on within your server logs.
    finally,when you are satisfied, you might have to run the following command to make your manual change into admin config repository.
    <install-root>/bin/wadm pull-config user=admin config=<hostname> <hostname>
    <install-root>/bin/wadm deploy-config --user=admin <hostname>
    you might want to check out this for more info on how you could use <if> else condition to handle your requirement.
    http://docs.sun.com/app/docs/doc/820-6599/gdaer?a=view
    finally, you might want to refer to this doc - which explains on ws7 request processing overview. this should provide you with some pointers as to what these different directives mean
    http://docs.sun.com/app/docs/doc/820-6599/gbysz?a=view
    >
    One customer said that it is not "tidy". They don't want the URL to change
    right upon first rendering the page. They want the root page to be rendered
    instantly i the first HTTP request.
    please check out the rewrite / restart SAF. this should help you.
    http://docs.sun.com/app/docs/doc/820-6599/gdada?a=view
    pl. understand that - like with more web servers - ordering of directives is very important within obj.conf. so, you might want to make sure that you verify the obj.conf directive ordering is what you want it to do..
    It seems that the reverse proxy (Service fn="service-passthrough") takes
    only the $uri value which was originally requested by the browser. I didn't
    yet manage to override this value while processing a request, not even if
    I "restart" a request. Turning the error log up to "finest" I see that even
    when making the "service-passthrough" operation, the Sun Web Server
    still remembers that the request was for "/test" (in my test case below);
    it does indeed ask the backend server for an URI "/test" and that fails.
    now, you are in the totally wrong direction. web server 7 includes a highly integrated reverse proxy solution compared to 6.1. unlike 6.1, you don´t have to download a separate plugin . however, you will need to manually migrate your 6.1 based reverse proxy settings into 7.0. please check out this blog link on how to set up a reverse proxy
    http://blogs.sun.com/amit/entry/setting_up_a_reverse_proxy
    feel free to post to us if you need any futher help
    you are probably better off - starting fresh
    - install ws7u4
    - use gui or CLI to create a reverse proxy and map one on one - say content
    http://docs.sun.com/app/docs/doc/820-6601/create-reverse-proxy-1?a=view
    if you don´t plan on using ws7 integrated web container (ability to process jsp/servlet), then you could disable java support as well. this should reduce your server memory footprint
    <install-root>/bin/wadm disable-java user=admin config=<hostname>
    <install-root>/bin/wadm create-reverse-proxy user=admin uri-prefix=/content server=<http://your back end server/ config=<hostname> --vs=<hostname>
    <install-root>/bin/wadm deploy-config --user=admin <hostname>
    now, you can check out the regular express processing and <if> syntax from our docs and try it out within <https-<hostname>/config/<hostname>-obj.conf> file and restart the server. pl. note that once you disable java, ws7 admin server creates <vs>-obj.conf and you need to edit this file and not default obj.conf for your changes to be read by server.
    >
    I have also tried "restart"ing the request like this:
    NameTrans fn="restart" uri="/data"
    ordering is very important here... you need to do this some thing like
    <Object name=default>
    <If not $restarted>
    NameTrans fn=restart uri from=/¨ uri=/foo.
    </If>

Maybe you are looking for