[x]
Posted via EE Mobile

Search, ask, and monitor your questions on the go with EE Mobile. Visit Experts Exchange from your mobile device and never be out of touch again.

Question
[x]
Attachment Details
[x]
The Solution Rating System

With so many solutions, how can you tell which solutions are most likely to help you and which ones are not? To provide you with a tool to use, we rate our solutions based on various elements that most accurately determine if a solution is a quality solution. To explain what factors affect the solution rating, here are the elements we take into consideration when formulating our solution rating.

  • The Grade of the Solution
  • The Zone Rank of the Expert Providing the Solution
  • The Number of Author and Expert Comments
  • The Number of Experts Contributing
  • The Feedback of the Community

Your Input Matters
Because of the way the system is set up, the most important variable in this equation is you. As a member of Experts Exchange, you are able to cast your vote on the quality of the solutions in regard to how complete, accurate, helpful and easy to understand each solution is. When you provide your feedback, each rating is adjusted accordingly. So, if you see a solution that has a poor rating that you think is a good solution, let us know by rating it. As you do, the rating will be adjusted and will become more accurate for other members of our site.

If you have any suggestions that you would like to make for our rating system, please ask a question in the Suggestions Zone of Community Support.

Thank you!

6.2

Embedded System Developing

Asked by mixelogj in Computer CPU Processors

Tags: xilinx, edk

Hello to everyone,

I have a question for you to ask which has to do with developing and synthesizing hardware using Xilinx EDK, Xilinx ISE and Modelsim. I have spent the last months to edit an existing PCI <-> Wishbone bridge to make it PCI <- IPIF and this process is now complete. I have edited the testbench as well and all testcases pass successfully in post PNR (timing) simulation as generated by Xilinx ISE 6.3.

My next step is to connect a PowerPC powercessor (PPC405 - as generated by Xilinx EDK) to the bridge to test it. For this, i have created a simple project in Xilinx EDK 6.3, generated a PLB2IPIF module, and instructed the project to export the IPIF signals so after exporting to ISE i can easily connect the top module (system.v - not system_stub.v because the PPC is a sub module in my design). This was done with no problems, since i was guided by a colleague who had done this before. It required not-easy-to-think-of stuff.

Anyway, i have exported the PowerPC project to ISE with no problems, connected the bridge to the IPIF signals exported by the PowerPC and to a PCI bus with behaviorial devices. During implementation of the design i get some warnings about signals with no load, in some EDK generated modules, that i am not sure if i can do anything about. For simulation, i use Modelsim SE 6 with the swift dll included in the veriuser variable. In there, the connection seems to be fine, as the PowerPC (actually the PLB2IPIF module) sends the reset and clock fine.

My problem comes to how can i make the PowerPC execute simple software. I tried to edit the C source file of the TestApp automatically generated by EDK when making a new project, to include an int* to which i give addresses and values to these addresses. These addresses are in the bridge's address space, as i have supplied in EDK. I have a single bram memory for instruction and data, which is in the range 0xffffc000 - 0xffffffff. The linker script (which also came with the TestApp) seems to have the range ok. In EDK, i "build all user applications" and include the generated .elf file into the ISE project, as well as system.bmm under system.v

The problem is that the PPC won't execute the software during Modelsim post PNR (as generated by ISE) simulation. At the waveform i see that the EN_A signal is only active for five clock edges (whereas the software i've written is longer than that). At the first and second clock edge, the A address input is zzzzZffc, while at the last three zzzzZff4. Data out (of port A) is always 0.

Before all that, i have asserted the PPC's reset input for a few clock edges and then the PPC starts the above accesses after a few cycles after reset deassertion.

So, what am i missing? What do i have to do to make the PPC execute the software application projects in EDK?

Thank you very much in advance, George Michelogiannakis
[+][-]05/26/05 03:36 AM, ID: 14084557Accepted Solution

View this solution now by starting your 30-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

About this solution

Zone: Computer CPU Processors
Tags: xilinx, edk
Sign Up Now!
Solution Provided By: mixelogj
Participating Experts: 0
Solution Grade: A
 
[+][-]05/26/05 06:53 AM, ID: 14085945Administrative Comment

Experts Exchange has a courteous staff of administrators who help members get the most out of the website by means of administrative comments like this one.

Start your 30-day free trial to view this Administrative Comment or ask the Experts your question.

 
 
Loading Advertisement...
20091111-EE-VQP-89