1 / 22

Powerful Development Board for Embedded Processor FPGA Designs

This Stripe Excalibur ARM EPXA1 embedded development board features EPXA1F484 device with industry standard interconnections, memory subsystem, expansion headers, and user-interface features for versatile embedded processor FPGA designs. It includes ARM922T 32-Bit RISC Processor, embedded memory, UART, timer, and watchdog timer. The example design involves handling read and write requests via AHB between Stripe and PLD components. Hardware and software development steps are detailed for setup and testing with LEDs and RS-232 communication.

ldonnelly
Download Presentation

Powerful Development Board for Embedded Processor FPGA Designs

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 環境設定 • Hardware development : quartus2 4.0 web edition and web license ,download form website • Software development : sopcbuilder with gnupro CD in the box

  2. Excalibur ARM

  3. Excalibur ARM feature • Powerful development board for embedded processor FPGA designs • – Features an EPXA1F484 device • – Supports intellectual property-based (IP-based) designs using a microprocessor • Industry-standard interconnections • – 10/100 megabits per second (Mbps) Ethernet • – Two RS-232 ports • Memory subsystem • – 8 Mbytes of flash memory • – 32 Mbytes of single data rate (SDR) SDRAM • Multiple clocks for communications system design • Multiple ports for configuration and debugging • – IEEE Std. 1149.1 Joint Test Action Group (JTAG) • – Support for configuring the EPXA1 device using flash memory, • with a MasterBlaster™ or ByteBlasterMV™ cable • – Multi-ICE header for debugging • Expansion headers for greater flexibility and capacity • – 5-V standard expansion header • – 5-V long expansion card header • Additional user-interface features • – One user-definable 8-bit dual in-line package (DIP) switch block • – Four user-definable push-button switches, plus reset switch • – Ten user-definable LEDs, plus function-specific LEDs • Test points provided to facilitate system development

  4. This is Stripe Excalibur ARM , EPXA1

  5. Embedded Stripe Components • ARM922T 32-Bit RISC Processor • –200-MHz Bus Performance • Embedded Memory • –Single-Port SRAM to 256 Kbytes • –Dual-Port SRAM to 128 Kbytes • SDRAM Controller • Expansion Bus Interface • Multi-Layer AMBA AHB Bus Architecture • Embedded Bridges between Stripe & PLD • Embedded Peripherals • –UART • –Timer • –Watchdog Timer • –Interrupt Controller

  6. Excalibur ARM, epxa1,Design example • ug_xa1_devbd_getting_started • Can be download form here http://www.altera.com/literature/lit-exc.jsp • 這是一個簡單的example, stripe是唯一的 bus master,只有它能送出read 或write 的request, slave則負責回映master的要求

  7. The block diagram of this example Single_transaction_slave Stripe Reg_file

  8. A write request form stripe Single_transaction_slave Stripe 1 2 Reg_file

  9. A write request from stripe • Stripe 透過 AHB 送出一個write request到single_transaction_slave, single_transaction_slave 的功用為負責處理AHB上面的溝通訊號 • Single_transaction_slave 將資料傳給regfile處理

  10. A read request form stripe Single_transaction_slave Stripe 1 4 3 2 Reg_file

  11. A read request from stripe • Stripe 透過 AHB 送出一個read request到single_transaction_slave • Single_transaction_slave 將資料傳給regfile處理 • Regfile將資料傳回給single_transaction_slave • Single_transaction_slave 將資料傳回給stripe

  12. Example Builds in epxa1 • Download the example • First hardware build • Then software build • download to development board • Setup RS-232 connect in PC

  13. Hardware build • 先用quartusII打開example • 按圖上的紐開始hardware build • 通常不會有問題除了license Push here to build hardware

  14. Software build • 打開SOPC Builder SDK Shell • 進到example裡面的gnu資料夾中,將makefile中的epxa10.c改為epxa1.c • 輸入make

  15. Download the design to development board • 執行prog_hw.bat • 接下來就能看到板子上面的跑馬燈

  16. Setup RS-232 • 打開hyperterminal做左邊圖裡面的設定

  17. Example results • 在板子上面能看到LED在跑動, 用RS-232和板子相連的PC也能夠在hyperterminal 的視窗中看到以下的訊息 ************************************************************** **Altera EPXA10 Development Board - I'm alive!!! ** ** ** ** Look for scrolling LEDs ** ** ** **************************************************************

  18. 修改example-hardware What you want a write request do What you want a read request do Double click 在 regfile 的圖上

  19. My Example reg_file.v if(write) begin if(reg_state) begin temp1 <= wdata; reg_state <= 1'b0; end else begin temp2 <= wdata; reg_state <= 1'b1; end end //endif else begin rdata <= temp1 + temp2; end

  20. 修改example - software int main(void) { LED = (volatile unsigned int*) EXC_PLD_BLOCK0_BASE + 0x00001000; printf("\r\n"); printf("****************************************************\r\n"); printf("** **\r\n"); printf("** Altera EPXA10 Development Board - I'm alive!!! **\r\n"); printf("** **\r\n"); printf("** Look for scrolling LEDs **\r\n"); printf("** **\r\n"); printf("****************************************************\r\n"); while (1) Scroll_LED(); return 0; } 在common的資料夾內的main.c

  21. My Example main.c temp = *LED; while(tempc != 0){ printf("input first number :"); scanf("%d",&temp); *LED = temp; printf("input second number :"); scanf("%d",&temp); *LED = temp; temp = *LED; printf("temp = %d \r\n",temp); printf("continue?(1/0)\r\n"); scanf("%d",&tempc); }

  22. My Example Results input first number :132 input second number :333 temp = 465 continue?(1/0)

More Related