A newbie first question: fpga synchronous input

Hi all
this is my first time to send a question at this forum
it is also the first time to use Labview, I am totally newbie
My problem is:
I have Xilinx Spartan 3A FPGA with a design runs at 10 MHz " derived from the 50 MHz of the On-board clock"
I want to test my design by appling inputs to the FPGA and watching the output
so how to apply predefined synchronous inputs that are synchronized to the my design clock
thanks in advance

Good Afternoon msaleh87,
What supporting hardware are you using with your Xilinx Spartan 3A FPGA?  The only NI hardware that the Xilinx Spartan 3A FPGA is found in are the sb-RIOs and the cRIO-9072 and cRIO-9074.
What Xilinx FPGA Chips Are Used by National Instruments RIO
Devices?
     http://digital.ni.com/public.nsf/allkb/ED6FC9CF7B983CFD86256DCE0072E313?OpenDocument
Please elaborate on what you are trying to accomplish with this project.  Also, please give some more details (such as source, speed, type, etc.) of your predefined synchronous inputs.
Regards,
Charlie Piazza
Staff Product Support Engineer, RF
National Instruments

Similar Messages

  • Question about "synchronized" and "wait"

    Hello, everyone!
    I have seen a piece of code like this,
    synchronized (lock)
    //do operation 1
    lock.wait();
    //do operation 2
    I think in the above piece of code, when a thead finished operation 1, it will release the lock and let other threads waiting for the lock have chance to run the same block of code. Am I correct?
    If I am correct, I have a further question, a "synchronized" block means a set of operations that can not be interrupted, but when invoke "wait" method, the thread running in the "synchronized" block will be terminated (interrupted) by release the lock and other threads will have chance to enter the "synchronized" block. In short, the execution inside the "synchronized" block will be interrupted. So, I wonder whether the above piece of code is correct and conforms to the principle of "synchronized". And what is its real use?
    Thanks in advance,
    George

    Thanks, pkwooster buddy!You're welcome
    I just wondered whether "wait inside a synchronized
    block" technology is thread safe. Please look at the
    following example,wait and synchronized are thread safe.
    public class Foo {
    int mVal= 0;
    public final Object mLock = ...;
    public void doIt() {
    synchronized(mLock) {
    mVal = ...;
    mLock.wait();
    if (mVal == ...) {
    // do something
    } else {
    // do something else
    }If we have two threads, T1 and T2, enter the block in
    their respective order, and T1 is woken up first, T2
    may have tampered with T1's execution path because T2
    changed mVal while T1 was asleep. So T2 manipulate
    instance field mVal is a side-effect.when you do the wait() you give up the lock and the other threads get a chance to run. When you exit the wait() you get the new value of the myVal variable which may have been changed. This is exactly what you want. To make that not thread save you could do
    int temp = myVal;
    wait();
    if(temp == ...)in this case the variable temp contains the old vale of myVal.
    >
    I think the most safest way is never wait inside a
    synchronized block, but it is less efficient. What do
    you think about the trick of wait inside a
    synchronized block? I think you are very experienced
    in thread field from your kind reply.
    Thanks in advance,
    Georgewait(), notify() and notifyAll() are very useful. You need them when you want threads to cooperate in an predictable manner. I recommend that you review the section on consumer and producer classes and wait and notify in the Threads Tutorial. It gives good examples. For a practical example of this you could also take a look at my Multithreaded Server Example. It implements a simple chat server that switches String messages. Look especially at the send(), doSend() and popMessage() methods in the StreamConnection class. These allow the receive thread of one user to send messages out using the send thread of another user. If you have questions about that example, please post the questions on that topic.
    Hope this helps.

  • Newbie script question... consecutive numbers with update.

    complete newbie type question... this is also my first post.  ( I am using CS3)
    does anyone have a script which can make it so I can add numbers into the text consecutively.
    for example, if this is my text "the big fat dog sat on the very wide mat, but was then displaced by a unfriendly cat."
    and I wanted to place a number 1, number 2, 3, etc at points in the text so it read, "the big fat dog1 sat on the very wide mat2, but was then displaced by a unfriendly cat3." but later wanted to add another number and have later numbers update themselves, so the text then said, "the big fat dog1 sat on the very wide mat2, but was then displaced3 by a unfriendly cat.4".
    by inserting the three, the previous three became four.
    Has anyone got something which might be useful in this regard.
    Many thanks
    Steve

    i wanted to avoid footnotes as they leave a bar at the bottom of each page.
    i wanted a script to do something similar to footnotes but not much further.
    does anyone have just a simple script that can do what I asked?
    Steve

  • How can I delete the first question, which is still there, that I ever asked in this community support, and that I have already had answered.

    The asking of questions and responding to answers on the support pages is a bit more complicated than I think it should be. The first question I ever asked was answered by a community member, but when I go to ask other questions, that first question is still there. Somehow I bypass that at times and get another question in, as right now. But why does that first question remain? I thought I said in the answers that my question had been answered, and replied to the person who answered it with my thanks.

    Hi Ideato:
    I was not talking about the questions that are in the question and answer section. I mean the question that I keyed in when asked for a summary of my question in one sentence, before it ever gets posted. You are right, of course, that questions and answers from someone else can be helpful to a lot of people.
    CuriosityCat

  • First question - I have Acrobat 9 on my desktop and the license seems to have been messed up.  I tried to download and fis but I asked me for a disk.  I don't have any idea where the "disk" is.  Can I get the license update without that disk?

    First question - I have Acrobat 9 on my desktop and the license seems to have been messed up.  I tried to download and fis but I asked me for a disk.  I don't have any idea where the "disk" is.  Can I get the license update without that disk?
    Second question - In anticipation of not being able to do that, I bought (at University bookstore) Acrobat XI Pro - do I need to uninstall the 9.0 Pro version before I try to install the XI version?

    If you still have your serial number for Acrobat Pro there is a link to the installer here:  Download Acrobat products | 9, 8

  • General place for newbie datamodeler questions?

    With the production release of SQL Developer Data Modeler I'd assume that this forum will draw a bunch of new users. Is there a better place to ask some pretty simple, newbie like questions that won't bother the more seasoned members?
    For instance, I am working in a Rails environment, which has some stringent naming conventions, one of which is that all of the primary key columns are numeric and called "id", with the foreign key linked columns called <table_name>_id.  When engineering a logical model to a relational model, the added foreign key columns are all "id#".  Is there a way I can define a naming rule to keep me from having to redo the relation column names?
    Also, we have a standard set of columns (mostly Rails related) which appear in every table. Can I define a generation rule which automatically includes these tables?
    Thanks

    Thank you. I will try changing that setting.
    IS there a setting which tells the relational model to automatically create pk and fk indexes? I haven't seen one, and manually setting them up is a tedious task. --sw                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Time synchronization problem with "niUSRP EX Rx Multiple Synchronized Inputs.v i " ??

    Hello,  
    I used "niUSRP EX Rx Multiple Synchronized Inputs.vi "( offred by NI) to synchronize 2 USRP in reception (the master connected to laptop via Ethernet and the slave connected to the master via MIMO cable). 
    I set: master--> RefIn and PpsIn     slave-->Mimo and Mimo. 
    Problem: Inspite I used identical cables that connect the both devices to the transmitter; the signal received by the master and the signal received by the slave ar'nt synchronized in time because the time lag (delay) is not constant!!!. 
    Where is the problem?!!  
    Thank you

    Hi,
    I used:
    transmitter--> Rohde & Shwartz SM300 signal generator.
    Receivers-->  2 x USRP N200 (connected with MIMO cable)  master--> RefIn and PpsIn     slave-->Mimo and Mimo.
    3 identical cables to transmit the signal, connected via Power Splitter/Combiner (Mini-Circuits).
    Cable 10MHz connects the master device with the transmitter.
     FreqTx=700MHz  (sin)           CarrierFreqRx=701MHz  --------> so the received signals are a sin of 1MHz (701-700=1MHz).
    I have no probleme with phase synchronisation (because both the slave and the master received a sin of 1MHz).
    My problem is the time synchronization:
    How can I verify if i did the  time synchronization?
    I must have 2 superposed sin [(ch0 I with ch1 I) (ch0 Q with ch1Q)] ?
    I must do Timed commands? if yes! How to do it?
    I try to run the example of constellation, then i have message: Find VI Named".........Vi"    I have this problem all the time when I run some examples . I have probleme with setup LabView?!
    Best regards

  • Published Captivate 6 project freezes on slide immediately before the first question slide

    I am running both CP6 and CP7 on Windows 7.
    I am still working on projects created with Captivate 6 in Captivate 6.  However, since installing CP7, any projects that I edit and publish with CP6 freeze up on the slide just before the first question slide.
    Since I have only begun experiencing this issue since CP7 was installed, I am assuming that it is something to do with the fact that i have both versions (6 and 7) installed.
    The only solution I have found so far is to open and publish the project in CP7, but this is not ideal as the projects I am working on in CP6 are new versions of ones already published in SAP LSO and I am concerned that publishing new versions of my courses from a different CP version will cause issues in LSO.
    Any ideas why this might be happening?  Ideally, I would prefer to continue to use CP6 for existing projects and only use 7 for new projects.

    Hi there,
    Have you created those projects in CP 6 from Scratch?
    Can you check the complete version of CP 6 (Help > about Adobe Captivate), it should be 6.0.1.240 or 6.1.0.319.
    Can you test with a blank new project in CP 6 after running it as Administrator (Right Click on CP 6 icon, then select run as admin).
    Thanks.

  • Recently I posted my first question on the discussion forum and received an answer. How can I reply to the answer? Where do I have to click to be able to post my response?I posted a question and received an answer. How can I reply to the answer

    This may seem stupid: Recently I posted my first question to the discussion forum. I received an answer. Where can I reply to the answer?

    It looks like this:
    You will only see it if you Sign In  with your appleID
    Captfred

  • Newbie XSan question - authenticating a computer from XSan Admin

    Hello - I have a very newbie XSan question!
    I have 2 computers that connect to an XSan. 1 I am having no problems with. The other I am unable to connect with.
    When I look in XSan Admin the 2nd computer (the one that is not working) is not authenticated.
    So I click on it and choose Authenticate. I enter what I know is an Admin username and password for the computer I am attempting to connect. The dot next to the computers IP turns green with 3 dots in it and then it turns gray again. It just does not connect.
    What is the problem?
    Is it licensing?
    Thanks
    Taj

    You need a different license ID for each machine, plus the admin machine. Do you have that?

  • Hey, my first question is that if I need to be connected to iCloud on my phone for my Imessages to work on my Mac? And my second question is if someone is looking into my Imessages on my Mac, how can I disconnect it from my phone right away?

    Hey, my first question is that do I need to be connected to iCloud on my phone for my Imessages to work on my Mac?
    And my second question is if someone is looking into my Imessages on my Mac, how can I disconnect it from my phone right away?

    you will need to do a hard wipe or remember the password hard wipe can be found on youtube how to. but this will erase all data

  • First Question?  Identify

    First question so I can be sure I am in the right place.
    I have a 60GB iPod, color I hope.
    The Serial number is jq5346yfsaz.
    I had to buy a new computer, I have all on my files in iTunes but I can’t get the iPod to sync. When I tell it to erase and sync it comes back and says it can’t find the file.
    Anyone want to tell me if I am in the right group and what I should do.
    I see a “download” that should make it work but it wants me to be sure of what I have.
    TIA,
    Burr

    If you've imported your library from the hard drive of your old computer it is possible that some of your files have restricted security permissions. e.g. they were marked as private to your old user account. Right click on your music folder and select properties. Hopefully you have a security tab in there. From this you should be able to grant yourself full access to all files & subfolders. Windows may take sometime to apply these settings to all your files.
    tt2

  • I have just owned a macbook pro and trying to learn things since i have all along used windows laptop. My first question is : when there are two files i am working together, one above the other on screen, how you switch over between the two with key ?

    I have just owned a macbook pro and trying to learn things since i have all along used windows laptop. My first question is : when there are two files i am working together, one above the other on screen, how you switch over between the two with key ?

    Hi...
    Mac OS X keyboard shortcuts
    Control-F4
    Move focus to the active (or next) window
    Shift-Control-F4
    Move focus to the previously active window
    By the way...  since you are new to Mac, click a clear space on your Desktop. You should see "Finder" top left corner of the screen in the menu bar.
    Click Help then click Help Center
    As an example type in    keyboard shortcuts
    You can use the Help menu for almost any application on your Mac.
    Apple - Find Out How - Mac Basics
    For held switching from PC to Mac >  Apple - Support - Switch 101

  • Source Synchronous Input: Capture clock/Launch Clock analysis

    Hi, I have a Source Synchronous LVDS DDR input into a Kintex7, the launching clock is edge-aligned to the data and capture clock should capture on opposite edge (a launch on the rising edge should be captured by the falling edge). I have designed it to work at 100Mhz by compensating the clock insertion delay with a PLL (to save the MMCM for other purposes) using BUFH (the timing is not so tight to use BUFIO/BUFR). The PLL also centers the opposing edge on the data window by shifting -90°. Now the launching clock waveform is {5.0 0.0}, and the waveform generated by the PLL is {2.5 7.5}, this is reported correctly by Vivado. But when vivado analyses the setup path (I have set the proper set_input_delays) the following happens:
    -Launching clock rising edge is correctly at 5.0ns at the input data PIN.
    -Capture clock falling edge is INCORRECTLY 7.5ns AT THE CLOCK PIN.
    What I don't get is: why Vivado, that recognizes that the capture clock is a generated clock by the PLL, uses the {2.5 7.5} waveform AT THE CLOCK PIN, and not at the ouptut of the PLL BUFH. I mean the falling edge of the capture clock should be 7.5ns at the output of the BUFH, not at the input to the FPGA (I see that the PLL correctly shifts this 7.5ns to be 5ns at the BUFH, but this is not what actually happens).
    Doing the calculations manually the interface meets setup/hold with ease. I just want Vivado to make the proper analysis.

    I am not 100% certain I followed all your logic, but I think the issue is that you aren't following how clocks are treated in SDC/XDC.
    In Vivado/SDC/XDC, there are two separate concepts - clock phase, and clock propagation. For calculating how the launch/capture edge relationship is done, it is done based purely on phase - propagation does not factor in to it. Regardless of how they are generated, you have two clocks
      - the primary clock (generated by the create_clock command), which has a waveform of {0.0 5.0} (I am not sure why you say the opposite - {5.0 0} is not a meaningful representation in XDC)
      - the automatcially generated clock at the output of the PLL, which has edges at {2.5 7.5}. Its a little irrelevent how you defined it (with a +90 or -90 degree shift since the interface is DDR) - for the sake of argument, I will say its +90 degrees.
    First, recognize that when you define a DDR input and use an IDDR to capture it, you are defining four static timing paths - you have two startpoints, one from your set_input_delay and one from your set_input_delay -clock_fall -add_delay. You also have two endpoints, one from the rising edge clock at the IDDR and one at the falling edge of the IDDR. This generates 4 paths
      a) rising input -> falling IDDR
      b) falling input -> rising IDDR
      c) rising input -> rising IDDR
      d) falling input -> falling IDDR
    All four paths exist, and all are timed.
    Now you need to understand the rules that Vivado uses to determine launch and capture edges. For this system, it is easy - the capture edge is always the edge of the capture clock that is the earliest that follows the launch edge. So in this case (assuming launching is {0 5.0} and capture is {2.5 7.5} will be
      a) rise at 0 -> fall at 7.5
      b) fall at 5 -> to rise at 12.5 
      c) rise at 0 -> rise at 2.5 (this is the most critical one, so a) is irrelevent)
      d) fall at 5 -> fall at 7.5 (this is the most critical one, so b) is irrelevent)
    Now that it has determined the launch and capture edges for all the paths, it starts the propagation at the primary clocks. For your set_input_delay these are the clock pin. For the capture IDDR, the edge starts at the primary clock, propagates through the PLL (which adjusts it for clock propagation but not for the phase shift), and ultimately to the IDDR clock.
    Now, in a real system this is what is going to happen - I am not sure why you think this is incorrect. If, however, there is some reason to believe that c and d are false paths, then you have to declare them as such (which will then leave a and b as the ones that remain). To do this, you would work with a virtual clock - you would define TWO clocks - the primary clock to the clock pin, and an idential virtual clock for your set_input_delays
    # Create the real and virtual clock
    create_clock -period 10 -name real_clk [get_ports clk_pin]
    create_clock -period 10 -name virt_clk
    # Define the input delay with respect to both edges of the virtual clock
    set_input_delay <delay> -clock virt_clk [get_ports data_pin]
    set_input_delay <delay> -clock virt_clk [get_ports data_pin] -clock_fall -add_delay
    # Disable the rising to falling and falling to rising paths
    set_false_path -rise_from [get_clocks real_clk] -fall_to [get_clocks virt_clk]
    set_false_path -fall_from [get_clocks real_clk] -rise_to [get_clocks virt_clk]
    Even though "real_clk" and "virt_clk" are different clocks all clocks in Vivado are related by default, so the fact that they have the same period and starting phase (which defaults to {0 5.0}) then they are effectively the same clock.
    The reason for using the virtual clock is to make sure that if there is a rising to falling edge path inside the FPGA, you don't accidentally declare it false too - and these will happen between the IDDR and fabric logic (if it is in OPPOSITE_EDGE mode).
    I hope this is clear... It can be a bit confusing, but it does make sense.
    Avrum

  • Question about synchronized

    Hello everyone,
    Suppose I have a method which is a synchronized method (for example, method Foo in the following code block), and in this synchronized method another method which is not synchronized is invoked (for example, method Goo in the following code block). I am wondering when executing in Goo from Foo, whether we still have the synchronized feature (i.e. obtain the lock of "this" object).
    synchronized public Foo()
        Goo();
    private Goo()
    }Thanks in advance,
    George

    Kaj,
    Hi, pls see my post above - I replied to the same question in the other forum and I was pretty sure about my answer until I found it different from ur reply here.
    Here is my reply. Can u kindly guide me to what's wrong in it ?
    if a lock on a sync-ed method extends to all methods being called from it, then the jvm (bcos it has no means of knowing until runtime the method calls from a sync method) has to lock all the methods in a class that has atleast one sync method.
    What this would mean potentially is that the effect of sync-ing one method would be equal to sync-ing all the methods bcos any of the other methods could be potentially called from the sync-ed one.
    The example below is co-erced, but serves to illustrate the point.
         public class Test
        synchronized public  void Foo()
            Goo();
        synchronized public  void Moo()
            Goo();       
            notify();
        private void Goo()
            System.out.println(Thread.currentThread().getName()+" accessing goo");
            try
                if(Thread.currentThread().getName().equals("Th one"))
                     //force thread1 to wait , lets see if thread2 can access it while thread1's waiting on it
                    wait();
            catch(Exception e){}
            System.out.println(Thread.currentThread().getName()+" returning from goo");
    //first thread
    public class MyT implements Runnable
        Test t;
        public MyT(Test t)
            this.t = t;
        /* (non-Javadoc)
         * @see java.lang.Runnable#run()
        public void run()
            t.Foo();
    //second thread
    public class MyT2 implements Runnable
        Test t;
        public MyT2(Test t)
            this.t = t;
        /* (non-Javadoc)
         * @see java.lang.Runnable#run()
        public void run()
            t.Moo();
    //Main
    public class Main
        public static void main(String[] args)
            Test t = new Test();
            Thread th = new Thread(new MyT(t),"Th one");
            Thread th1 = new Thread(new MyT2(t), "Th two");
            th.start();
            th1.start();       
    And the o/p I got was
    Th one accessing goo/*thread one in goo, is in wait() coz of the funny if clause there*/
    Th two accessing goo /*there's no lock on goo, else with thread one in wait(), this wouldve been impossible*/
    Th two returning from goo/*Thread 2 is over with Goo(), will go back and notify Thread 1*/
    Th one returning from goo/*Thread 1 is notified, wakes up and returns :-)*/
    tx,
    ram.

Maybe you are looking for