• <li id="00i08"><input id="00i08"></input></li>
  • <sup id="00i08"><tbody id="00i08"></tbody></sup>
    <abbr id="00i08"></abbr>
  • 新聞中心

    EEPW首頁 > EDA/PCB > 設計應用 > 可在線升級的FPGA并行配置方法的實現

    可在線升級的FPGA并行配置方法的實現

    作者: 時間:2009-08-10 來源:網絡 收藏

    硬件電路的設計只提供了接口工作的內核和基礎,只有在軟件的控制下,接口才能發揮作用,硬件電路與軟件程序是緊密相關的 [4]。本設計中 采用 Altera公司的 EPF10K10ATC144-3,含有 576個邏輯單元和 6144個RAM位,其配置數據大小為 15000Bytes,微處理器給EPF10K10ATC144-3的配置程序如下:

    本文引用地址:http://www.czjhyjcfj.com/article/191963.htm

    unsigned char FpgaConfig(void)
    {
    unsigned int iConfigDataByteCount;
    unsigned char code * pConfigDataAddress;
    pConfigDataAddress = 0x2000; // 配置數據的起始地址
    nCONFIG = 0;
    while((nSTATUS==1) || (CONFIG_DONE == 1));
    nCONFIG = 1;
    while((nSTATUS==0);
    iConfigDataByteCount = 0;
    CFG_CS_ = 0;
    while(CONFIG_DONE == 0)
    {
    while(RDYnBUSY == 0);
    _CFG_ADDRESS = *pConfigDataAddress;
    pConfigDataAddress++;
    iConfigDataByteCount++;
    if ((iConfigDataByteCount > 0x3A98) || ( nSTATUS==0) )
    //EPF10K10ATC144-3 配置數據為0x3A98(15000)字節,升級成相同封裝和引腳的
    //EPF10K30ATC144-3 時,只需將0x3A98 改成0xC63E(50750)即可
    {
    CFG_CS_ = 1;

    return ERROR;
    }
    }
    CFG_CS_ = 1;
    return SUCCESS;
    }

    在不更改硬件板的條件下,若更改 FPGA芯片升級系統,升級成含有 1728個邏輯單元和 12288個 RAM位的 EPF10K30ATC144-3芯片時,由于與 EPF10K10ATC144-3具有相同的封裝和引腳排列[3],因此硬件上可以直接更換 FPGA芯片來升級,而軟件上只需將 Block1程序中對 FPGA配置的數據大小參數 15000改成 50750(見上程序注釋)。而升級芯片的配置數據,則直接通過串口 IAP將配置數據寫入 Block0高地址段即可。因此,能非常方便的在線完成 FPGA內部邏輯甚至更換 FPGA芯片時的系統升級。
    4.結論
    本文給出了基于 SST89V564RD處理器的 FPGA被動異步配置的軟硬件實現,該方法充分利用了 SST89V564RD的 IAP技術以及分塊大容量的 Flash存儲技術,能快速、方便、靈活地對對 FPGA的內部邏輯功能進行,還可以完成在升級相同封裝和引腳的 FPGA芯片時,進行整個系統的。本方法也適合于其他類似的微處理器。


    上一頁 1 2 3 下一頁

    評論


    相關推薦

    技術專區

    關閉
    主站蜘蛛池模板: 聂荣县| 射洪县| 满洲里市| 安岳县| 抚远县| 抚远县| 沙田区| 神池县| 高唐县| 长海县| 布尔津县| 康乐县| 英超| 常宁市| 沙雅县| 永平县| 克拉玛依市| 区。| 安庆市| 肇源县| 邢台市| 内黄县| 扎鲁特旗| 民勤县| 黎城县| 疏附县| 承德县| 长宁区| 遂平县| 聂荣县| 丰镇市| 滦平县| 江源县| 祁门县| 正定县| 阜新| 江安县| 建德市| 福贡县| 榆社县| 名山县|