PCIe/AXI to user logic addressing

Hi,
I’m using a Spartan-6 XC6SLX45T-FGG484-2 FPGA and I’m using the Xilinx Platform Studio.
I want a PCIe host pc to communicate with two instances of a third party IP core via AXI4 memory mapped.
The host PC performs PCIe write and read transactions. The AXI slave responds to these transactions:
The AXI slave receives the data the host pc sent, and forwards it to the third party IP core, for a write request. For a read request, the AXI slave reads the data from the third party IP core, and sends it via AXI to the PCIe host pc.
My design looks like this:
PCIe/AXI MM bridge <> AXI Interconnect <> AXI_to_User_Logic <> 3rd_party_IP_core_0
                                                                                                                    <> 3rd_party_IP_core_1
AXI_to_User_Logic is an AXI4 memory mapped slave with two address spaces, that was created with the Create & Import Peripheral Wizard.
My first question is:
I think the PCIe/AXI bridge should be the AXI Master, so do I need to connect only the M_AXI to the AXI bus, or do I have to connect S_AXI and/or S_AXI_CTL as well?
The next question is: how to set the addresses?
I’m not sure whether I understood how to do the addressing, so I’d like someone to verify that the addressing I made is right. If it’s wrong, please show me how it has to be done.
I want to send 32 bytes to each AXI address space of the AXI slave and read 32 bytes from each AXI address space of the Slave.
Addresses of PCIe/AXI bridge IP core:
PCIe/AXI bridge: AXI Device Base Address (C_Baseaddr) = ?
PCIe/AXI bridge: AXI Device High Address (C_Highaddr) = ?
These Addresses can only be set in the PCIe/AXI bridge, not in the Slave. What do they mean? How should they be set?
Write and Read 32 Bytes to/from two AXI address spaces means: PCIe BAR size = 32 Bytes *2*2 = 128 Bytes (?).
128 = 2^7 --> PCIe BAR needs the lower 7 Bits to be 0 --> The bridge’s parameter C_PCIEBAR _LEN_0 = 7
The PCIe BAR gets determined by the configuration software.
Do I need an AXI BAR in the bridge? I don’t think so, as I only want to use the AXI Master Interface, right?
PCIe/AXI bridge: AXI Base Address 0 (C_AXIBAR_0) = ?
PCIe/AXI bridge: AXI High Address 0 (C_AXIBAR_HIGHADDR_0) = ?
PCIe BAR 0 mapped from AXI BAR 0 (C_AXIBAR2PCIEBAR_0) = ?
This BAR is only needed, if the endpoint (AXI/PCIe bridge) wants to initiate a transaction to the root port (that’s what I read about it, in the Xilinx support forum). So I don’t need this, right?
AXI BAR 0 mapped from PCIe BAR 0 (C_PCIEBAR2AXIBAR_0) = 0000 0000
Addresses of the User Logic IP core:
AXI_to_User_Logic_0:Mem0    Base Address = 0000 0000
AXI_to_User_Logic_0:Mem0    High Address = 0000 001F
AXI_to_User_Logic_0:Mem1    Base Address = 0000 0020
AXI_to_User_Logic_0:Mem1    High Address = 0000 003F
--> Both address spaces are 32 Bytes.
Let’s say the configuration software set the PCIe BAR0 to 0x0100 0000.
If the User_logic’s BARs and the PCIEBAR2AXIBARs are configured like above, I can access the second axi address space by performing a PCIe transaction with PCIe Baseaddress = 0100 0020 which will result in an AXI request with address = 0x00000020. Is this right?
I appreciate any help,
Fabian

interconnect is when you have one master, multiple slaves or multiple masters, single slave or any combination of NxM connectivity. If you have a single master and a single slave then there is no need for an interconnect and you can connect your master to the slave directly.
If you want a master example, you can do "tools|create&package ip|create new ip" and create an ip with master interface. Then you can add your master state machine/controller inside.
Also keep in mind that if you want your master to talk to your own slave and DDR you need to either have two master interface in your IP block or add an interconnect to demux your master to two separate slaves.

Similar Messages

  • AXI4 memory mapped slave user logic implementation

    hi, I'm using a Spartan6 and the EDK.
    I'm trying to write data via PCIe/AXI to a third party IP core, and read data of this IP core. The connection looks like this:
    PCIe/AXI MM bridge <> AXI Interconnect <> AXI_MM_Slave <> two instances of the 3rd_party_IP_core
    I want to read/write 128 bits. I created an AXI4 memory mapped slave with two address spaces with the CIP Wizard.
    Now I'd like this AXI slave to read the data from the bus, and forward it to an output : std_logic_vector(127 downto 0), and read data of an input : std_logic_vector(127 downto 0) and write this data to the AXI bus.
    I don't know how to use the IPIC signals the CIP Wizard created, to do this. As I want to read/write 128 bits while the Bus2IP_data and IP2Bus_data is only 32 bits wide, I don't know how to manage this. Could anyone please help me with some VHDL-code?
    Thanks and regards,
    Fabian

    As per my understanding
    It may  be  possible  If one person manages all service desk operations and that person have windows user id with userid "SERVICEDESK ".
    It is not possible for several users to have same userid in Active directory
    Integration of portal with windows userid possible whith same userid.
    we can see some other inputs also
    Koti Reddy

  • AXI slave connection of PCIe AXI bridge IP

    Hi:  
    I'm creating a system with IPI which have Microblaze, DDR3 and PCIe interface.
    When connecting the AXI PCIe bridge block, I got some problem.
    Currently, I can access DDR3 through PCIe.
    The path is Host PC ==> PCIe ==> AXI PCIe bridge ==> AXI interconnect ==> DDR3.
    Now, I want to send data from Microblaze to Host PC as well, but don't know how to do it.
    Tthe path I think should be : MicroBlaze ==> AXI interconnect ==> AXI PCIe bridge ==> PCIe ==> Host PC.
    How should I connect the S_AXI_CTL and S_AXI port on AXI PCIe bridge?
    Should S_AXI_CTL be connected? Is it also connected to M_AXI port of AXI interconnect?
    Thanks a lot! 
    David

    This setup looks a bit dangerous because you are mapping PCIe->AXI to address 0x00000000 which will inturn get decoded and go back out to PCIe land.
    The M_AXI port from pcie probably only needs access to mig and maybe uart. The microblaze Data port address space looks correct. Any access from microblaze to address 0x00000000 will get decoded by the interconnect and passed to the S_AXI port on the pcie bridge. Then, the pcie bridge translates the axi address 0x00000000 to the PCIe address 0xFF000000.
    I'm not a PCIe guru but I believe the software on the host will need to configure its pcie bridge in order to allow access to motherboard resources from the development board. On a linux host, the pcie driver would be responsible to map host memory or motherboard resources to be accessable from the development board.

  • System_Mail_Send - Get user email address

    Hi,
    I am trying to use System_Mail_Send to send a notification in the end of a Job Chain.
    How I can retrieve user email address from SAP CPS user(UME)?
    I want to use this information as To destination.
    Regards,
    André Ferreira

    Hi Andre,
    Actually, I had no time to test what I wrote earlier ... the code below should work in a library source:
    // Example code to illustrate
    package masalan;
    import com.redwood.scheduler.api.model.SchedulerSession;
    import com.redwood.scheduler.api.model.Subject;
    import com.redwood.scheduler.api.model.enumeration.SubjectType;
    import com.redwood.scheduler.api.scripting.variables.*;
    public class user
    public static String getEmailAddress(String username)
         //Default email address is [email protected]
          String defaultEmail = "[email protected]";
          if (username == null || username.trim().isEmpty()) return defaultEmail;
          SchedulerSession jcsSession = ScriptSessionFactory.getSession();
          Subject subject = jcsSession.getSubjectByTypeName(SubjectType.User,  username);
          String email = "";
          if (subject != null) email = subject.getEmail();
          if (email != null && email.endsWith("@company.com")) return email;
          return defaultEmail;
    You create REL entry points:
    Name - getEmail
    FQ Class Name - masalan.user
    Method Signature - getEmailAddress(String)
    Now, create a parameter Username on the job chain.
    Parameter To should have  the value =Custom.getEmail(chainParameters.Username)
    You specify the username in the Username parameter, the email address will be retrieved from CPS. The user must have logged on to CPS at least once, alternatively, you can import the user.
    Note that to import the user, you must assign at the very least the AccessScheduler action in UME.
    Regards,
    HP
    Message was edited by: h. Carpenter - missed an import and add SchedulerSession
    Message was edited by: h. Carpenter - Improved error handling, more secure code (it uses default email address if anything goes wrong or if somebody tries to use an external email address)

  • Configure Logical Address for Web Applications-Hyperion 11.1.2

    Hello,
    I have f5 load balancer infront of two foundation servers and I have not yet configured the Logical address for web applications with Loadbalancer DNS name/hostnmae. I can access all of web applications through Load Balanced URL. Do I Still need to configure Logical Web Address for web applications ?
    Thank you so much !

    To add to this part of the reason for load balancing is usually to support high availability (in addition to scalability). Without that logic address being setup you will find certain configuration items are pointed to one server or another and if that one server is brought down it impacts key functionality of the whole environment.
    You should consider a test of the infrastructure by purposely bringing down services and/or servers to ensure you still have a fully working environment with the other redundant components. This test may take half a day to several days to really go through a full regression test of key features while taking key pieces down.
    Regards,
    John A. Booth
    http://www.metavero.com

  • I would like to change my user email address to a different email? I am currently subscribed with [delete] but would like to change it to [delete]

    I would like to change my user email address to a different email?
    I am currently subscribed with [email protected] but would like to change it to [email protected]

    Change/Verify Account https://forums.adobe.com/thread/1465499 may help
    -email address https://forums.adobe.com/thread/1446019

  • User IP Address in ADC (Activity Data Collector)

    Hi all,
    I would like to use Activity Data Collector. First previews of the generated logs looks fine but I miss the logged User IP Address.
    Does someone know how to get the IP Address?
    Maybe I missed a parameter, so please tell me which parameter logs the User IP Address (NOT the server).
    ADC file format / parameter: http://help.sap.com/saphelp_nw70/helpdata/en/46/e4de7fdc8e72dde10000000a114a6b/frameset.htm
    Thanks and regards,
    Stefan

    Hi,
    chk this also
    [http://help.sap.com/saphelp_nw04s/helpdata/en/7f/c52442ad9f5133e10000000a155106/content.htm]
    [http://help.sap.com/saphelp_nw04s/helpdata/en/0b/50ad3e1d1edc61e10000000a114084/content.htm]
    Regards
    Baby

  • Logical address WEL1

    We want to customize Inter Company billing - Automatic posting to vendor Account (SAP-EDI).
    The only case is that we want to create the logical address (transaction WEL1).
    The logical address is made of the supplying company code and the receiving customer.
    We also have in place the plant abroad functionality.
    this means that the logical address as build up above should be duplicated.
    because we have two plants, belonging to the same supplying company code and those are deliverying to the same receiving customer (customer representing the receiving company code/receiving plant). We now are having a problem with WEL1.
    It says that Target key must be different from source key. How can we solve our problem?
    Regards,
    Maarten Pronk
    Edited by: L. Foree on Aug 4, 2010 12:38 PM

    In the outbound function module (idoc-output_invoic_iv_mm)
    you have the customer function 001
    (EXIT_SAPLVEDF_001) for changing the IDOC control record.
    This is called after selecting the logical adress.
    SELECT SINGLE * FROM EDILOGADR WHERE LOGADR = BUKKRED.
      KNVV-EIKTO  = EDILOGADR-DESTIN+4(10).
    *-Partnerart - Sender
      CONTROL_RECORD_OUT-SNDPRT = 'LI'.
    *- füllen Partnernummer des Absenders
      CONTROL_RECORD_OUT-SNDPRN = KNVV-EIKTO.
    *- Aufruf User_Exit zur Ergänzung des Kontrollsatzes
      CALL CUSTOMER-FUNCTION '001'                   !!!!!!!!!!!!!!!!!!!!!!!
           EXPORTING
                CONTROL_RECORD_OUT = CONTROL_RECORD_OUT
                DVBDKR             = VBDKR
                DOBJECT            = OBJECT
           IMPORTING
                CONTROL_RECORD_OUT = CONTROL_RECORD_OUT
           TABLES
                DXVBPA             = XVBPA
                DTVBDPR            = TVBDPR
           EXCEPTIONS
                  ERROR_MESSAGE_RECEIVED        = 1
                  DATA_NOT_RELEVANT_FOR_SENDING = 2.
      CASE SY-SUBRC.
    Above is only the suggestion if you need further information please
    check with your local consulting

  • Server logical address space is running low

    Hi, I have server with NetWare 6.5 SP08.
    I get the message:
    Server logical address space is running low. Increase the available logical space by restarting the Server with the-u788197376 switch.
    What I can do?
    Thank you.

    Jjfbravo,
    > Server logical address space is running low. Increase the available
    > logical space by restarting the Server with the-u788197376 switch.
    > What I can do?
    That switch should not normally be needed. What are you running on this
    server? Please run
    load config /jumba1se
    Post results here
    - Anders Gustafsson (NKP)
    The Aaland Islands (N60 E20)
    Novell has a new enhancement request system,
    or what is now known as the requirement portal.
    If customers would like to give input in the upcoming
    releases of Novell products then they should go to
    http://www.novell.com/rms

  • OIM 11g: How to remove rule requiring unique user email addresses

    Use the OIM 11g Administrative and User Console to update a user's email address to be the same as another user's address and on save you get error message:
    "The user with the attribute Email and value [email protected] already exists"
    In OIM 9.1 we used to be allowed duplicate email addresses.
    OIM 11g wants them to be unique (refer OIM 11g User Guide table 11-2 in section "11.2 User Entity Definition" which shows the email attribute properties with unique:yes).
    How do you change this to "unique:no"?
    The OIM 11g Admin Guide section "14 Configuring User Attributes" describes the User.xml file in MDS but doesn't mention unique properties.
    The System Properties accessed via System Management->System Configuration doesn't show anything that looks like an option to enforce email address uniqueness.
    Thanks

    OIM 11g does not allow duplicate email addresses. We asked Oracle about this and they responded that the feature (duplicate email addresses) was "removed from OIM 11g due to sending mail notifications, security and other related
    concerns". We think we can live with this restriction and did not make an enhancement request.
    The user guide does show that email address is unique:
    http://download.oracle.com/docs/cd/E14571_01/doc.1111/e14316/usr_mangmnt.htm#BGBDCDCH
    but there's no way to override the rule.

  • Enable Master AXI interface to provide address space more than 32 bit - HLS

    Hello everyone,
    Is there any specific syntax in HLS to anable Master AXI interface to provide address width more than 32 bit, like 33 bit to support 8G memory space addressing?
    For now we can manually modify the Verilog code generated from HLS by changing the AWADDR, ARADDR and related signals from 32 to 33 bit, and make the memory space reach upto 8G.
    However this maual process spent us lots of time and the code is hard to maintain expecially when the HLS design becomes more complicated.
    Could anyone please help to find a way to expend the AXI address width in HLS? Thanks.

    There is an option -m_axi_addr64 to enable upto 64-bit addressing for all M_AXI ports in the config_interface option.

  • Tracking user IP addresses?

    Does Tarantella log which IP address a given user logs in from? I noticed
    in the Object Manager that you can see what IP address a current user is
    logged in from. Is it possible to track that information through Billing
    Services?
    Thank you,
    Steve

    Yes, I need to track all user logons and where those users logon from. I'm
    not as interested in what emulator sessions they run but that information
    is welcome.
    Escape 27 wrote:
    Steve,
    You could probably try adding "*/*/*:all_%%PID%%.log" to your log filters to
    see if you can find the necessary info in the log file. If you do, you can
    then modify the filter log only those specific components. I'm sure the
    client IP address is being logged in one of these components, but can't
    remember which one though.
    BTW - what are you trying to achieve by tracking the user IP address?
    "Steve T" <[email protected]> wrote in message
    news:cnjd1u$n87$[email protected]..
    Thank you for your response. After considering it, I believe that it would
    cause a problem: issuing the TTA emulatorsession command consumes high CPU
    resources. To track the majority of the user sessions would require
    running this command every minute in cron. This would not be good for
    performance. Even if it was run every 5 minutes, it would still impact
    performance on an already busy TTA server.
    Also, we would miss any quick sessions that may have started and ended
    after the previous emulatorsession poll took place. (The TTA
    emulatorsession command will only display currently active sessions.)
    I was hoping that there would be a log filter that could be configured to
    modify what Billing Services keeps track of.
    Regards,
    Steve
    Tillmann Basien wrote:
    if you use "tarantella emulatorsession list" you can see the IP Adress of
    the Users Client WS.
    Writing an cron based script, and analyse the output.
    TAB
    "Steve T" <[email protected]> schrieb im Newsbeitrag
    news:cniutc$inn$[email protected]..
    Does Tarantella log which IP address a given user logs in from? I
    noticed
    in the Object Manager that you can see what IP address a current user
    is
    logged in from. Is it possible to track that information through
    Billing
    Services?
    Thank you,
    Steve

  • Restore a user's Address Book on Lion Server with TimeMachine available

    Has anybody found the solution to restore a single user's Address Book on Lion Server with TimeMachine available

    I recently needed to restore an older version (by a few hours) of my AddressBook DB (on Lion Client) and Time Machine simply kept crashing!  Finally, what I had to do to get it going was to quit AddressBook, delete the contents of ~/Library/Application Support/AddressBook, and then open that folder within Time Machine (via Finder), so as to only restore (an older version of) the "MetaData" folder within (and nothing else).
    Hope this helps.

  • How to get the remote user IP address if behind the proxy or firewall

    Hi
    How do i get the remote user Ip address who is invoking the servlet behind from a firewall.
    When i use getRemoteHostAddr it gives the proxy ip address not the actuall user host address... Kindly let me know how to get the actual user ip address
    satish

    There is no reliable way to determine the original IP, and such information is not useful to you if the original IP is behind a firewall. What do you propose to use it for? There is probably an alternative way to do things that does not require the remote IP.

  • SAP user company address

    I just created a new client and logged onto it with the SAP* user so that I can create an administration user for setting up CUA.
    It's a brand new client so I have to define the SAP user company address, but when I click on the drop down arrow for the country key, it says no values found.  Is this characteristic of new clients?  How can I get the address defined?  Thanks!

    Hi Vu!
    I think, now I can track your problem.
    Please check in SCC4, which setting client 000 has in field T000-CCCATEGORY (or directly with SE16).
    Default (and correct) value is SAP Reference. If it's different in your system - deep ****. You should change this value back to SAP Reference (that's easy).
    But whoever made this change, used this client for further changes - bad idea. Let's just hope, there is no mess.
    There is no need to mark on client as productive - especially development and tests systems don't have this, only in production systems this setting makes sense.
    Afterwards your problem should be gone - let's see.
    Regards,
    Christian

Maybe you are looking for