国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用

這篇具有很好參考價值的文章主要介紹了NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

AG32VF407是內(nèi)帶2K FPGA邏輯單元的MCU芯片。雖然目前不考慮這款FPGA芯片,因為是開發(fā)筆記,就記錄一下我的學習使用過程。使用這個IDE就是想了解一下這塊MCU到底如何使用的。

安裝IDE說明

http://www.tcx-micro.com/doc_25499579.html提供了AGM MCU的開發(fā)軟件下載。需要安裝python3.8版本以上(因為AGM board的腳本使用3.8支持的語法,platformio自帶的是3.7.7,會編譯出錯)。

IDE是基于VS-code的platformio。開發(fā)軟件就是把package和platform加入到platformio環(huán)境中。

platformio/platforms

安裝之后,在用戶.platformio/platforms/中增加了AgRV的鏈接,鏈接到實際的agrv安裝目錄,下面是AgRV文件夾的內(nèi)容,boards包括多款AGM MCU board源代碼,builder下面是py編譯腳本。

AgRv目錄:

NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用,FPGA FC游戲卡開發(fā),fpga開發(fā),筆記

examples提供了一些有用的開發(fā)實例。

NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用,FPGA FC游戲卡開發(fā),fpga開發(fā),筆記

platformio/packages

下圖中的快捷鏈接都是ArGV安裝的framework和tools,包括ucoas,freertos,lwip,ips,sdk等源代碼。tools包括flash下載,jlink下載調(diào)試,logic綜合(FPGA編譯生成bit stream文件,就是supra FPGA開發(fā)軟件),risv-v編譯工具。

NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用,FPGA FC游戲卡開發(fā),fpga開發(fā),筆記

編譯遇到的問題

隨便用了例子在platformio中試用一下。Py腳本運行出錯,原因是platformio使用自帶的python版本是3.7.7,有些語法需要在3.8以上才能運行。編譯的時候使用platformio自帶的python。

解決:在platformio配置中禁止使用內(nèi)部python之后問題解決。

看了芯片手冊之后的疑問:2K FPGA到底怎么配置生效

手冊沒有任何有用的信息。沒有FPGA配置說明。

我從源代碼中一步一步分析了解其使用方式。

1)在platformio.ini(項目環(huán)境配置文件,格式見官網(wǎng),可以進行擴展使用)中,

NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用,FPGA FC游戲卡開發(fā),fpga開發(fā),筆記

?說明這個F407的邏輯設備是ARGV2K,而ARGV2K正好是AGM的另外一塊純2K FPGA芯片,下載了手冊和燒寫說明文檔,只是從JTAG進行配置FPGA,沒有其他有用信息。

通過分析F407 python編譯腳本,首先了解了可以在platformio進行fpga的編譯下載,MCU代碼和FPGA代碼是分開編譯(可以合并下載嗎?)。logic_address地址是芯片內(nèi)部flash地址(地址起始位置有什么需求嗎?)。

最后在agrv_sdk源代碼中找到了我要了解的東西。

見agrv_sdk的fcb.c, fcb.h, example_fcb.c。(FCB:flash control block)

#define FCB FCB0 // This is the only FCB supported

// To store the config address of FPGA bit stream and it's complement value
#define FPGA_CONFIG_ADDR   0x81000030
#define FPGA_CONFIG_ADDR_N 0x81000034

#define FCB_CTRL_INIT       (1 << 0)
#define FCB_CTRL_WRITE      (1 << 1)
#define FCB_CTRL_READ       (1 << 2)
#define FCB_CTRL_UPDATE     (1 << 3)
#define FCB_CTRL_ACTIVATE   (1 << 4)
#define FCB_CTRL_DEACTIVATE (1 << 5)
#define FCB_CTRL_AUTO       (1 << 6)
#define FCB_CTRL_DMA        (1 << 7)

#define FCB_STAT_INIT       (1 << 0)
#define FCB_STAT_ACTIVE     (1 << 1)
#define FCB_STAT_ERR_ID     (1 << 4)
#define FCB_STAT_ERR_HEADER (1 << 5)
#define FCB_STAT_ERR_CRC    (1 << 6)
#define FCB_STAT_ERR_ALL (FCB_STAT_ERR_ID | FCB_STAT_ERR_HEADER | FCB_STAT_ERR_CRC)

#define FCB_AUTO_WORDS     (99944 / 4)

typedef struct
{
  __IO uint32_t CTRL; // 0x00
  __IO uint32_t ADDR; // 0x04
  __IO uint32_t DATA; // 0x08
  __IO uint32_t AUTO; // 0x0c
  __IO uint32_t STAT; // 0x10
  __IO uint32_t INT;  // 0x14
} FCB_TypeDef;

頭文件中定義了FPGA配置地址寄存器(指向bit stream文件存放在flash中的地址,用兩個word表示)。最大99944字節(jié)長。

FCB結(jié)構(gòu)圖(struct FCB_TypeDef),是內(nèi)存控制塊寄存器,指向0x4001000。進行這些寄存器進行配置操作。

#define FCB0_BASE 0x40010000
#define FCB0 ((FCB_TypeDef *) FCB0_BASE)
#define APB_MASK_FCB0 (1 << 0)
#define FCB0_DMA_REQ 5
#define FCB0_IRQn 3

兩種配置函數(shù),一種是單字節(jié)寫,一種是DMA方式。

// Fully automatic FPGA configuration. config_addr must point to configuration bit stream generated by Supra software
ReturnCodeTypedef FCB_AutoConfig(uint32_t config_addr)
{
  FCB->CTRL = FCB_CTRL_AUTO;
  uint32_t *ptr = (uint32_t *)config_addr;
  for (int i = 0; i < FCB_AUTO_WORDS; ++i) {
    FCB->AUTO = *ptr++;
  }
  return (FCB_IsActive() && !FCB_IsAnyError()) ? RET_OK : RET_ERR;
}

// The DMA version is about 2x faster  
ReturnCodeTypedef FCB_AutoConfigDma(uint32_t config_addr, DMAC_ChannelNumTypeDef channel)
{
  FCB->CTRL = FCB_CTRL_AUTO;
  DMAC_WaitedTransfer(channel, config_addr, (uint32_t)(&FCB->AUTO), DMAC_ADDR_INCR_ON, DMAC_ADDR_INCR_OFF,
                      DMAC_WIDTH_32_BIT, DMAC_WIDTH_32_BIT, DMAC_BURST_256, DMAC_BURST_256, FCB_AUTO_WORDS,
                      DMAC_MEM_TO_MEM_DMA_CTRL, 0, 0);
  return (FCB_IsActive() && !FCB_IsAnyError()) ? RET_OK : RET_ERR;
}

AGM MCU AG32在VSCode下的使用入門提供的信息

(見鏈接):

http://www.tcx-micro.com/doc_26309003.html

在第十節(jié)開發(fā)注意項中說明logic_address指向內(nèi)部flash地址。jtag下載bit stream文件到這個地址。(然后怎么加載生效?)

NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用,FPGA FC游戲卡開發(fā),fpga開發(fā),筆記

上面這個信息是今天更新的?因為我5-29號截的圖是這樣的。

?NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用,FPGA FC游戲卡開發(fā),fpga開發(fā),筆記

總結(jié)一下

?集成在platfomio開發(fā)環(huán)境中進行芯片固件開發(fā)還是不錯的。同時提供了logic和固件編譯下載調(diào)試。提供了好幾種常用的framework bsp包,sdk也很完整,python腳本和c代碼寫得都很清晰,方便使用。

芯片手冊真的沒法詳細些嗎?memory mapping詳細說明,寄存器定義和使用這些對開發(fā)者這么重要的東西需要那么保密嗎?文章來源地址http://www.zghlxwxcb.cn/news/detail-588952.html

到了這里,關(guān)于NES(FC) FPGA游戲卡開發(fā)筆記(3)---- AGM AG32VF407開發(fā)環(huán)境的使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務器費用

相關(guān)文章

  • 基于STM32設計的掌上游戲機(運行NES游戲模擬器)詳細開發(fā)過程

    開發(fā)環(huán)境: keil5 代碼風格: 寄存器風格,沒有采用庫函數(shù),底層代碼全部寄存器方式編寫,運行效率高,注釋清楚。 MCU型號: STM32F103ZET6 開發(fā)板: 正常的一塊STM32F103ZET6系統(tǒng)板。 游戲模擬器: ? NES游戲模擬器 LCD : ? ALIENTEK的3.5寸屏幕。(屏幕型號不重要,隨便一款都可以的,把

    2024年02月06日
    瀏覽(22)
  • iMX6ULL驅(qū)動開發(fā) | 讓imx6ull開發(fā)板支持usb接口FC游戲手柄

    iMX6ULL驅(qū)動開發(fā) | 讓imx6ull開發(fā)板支持usb接口FC游戲手柄

    手邊有一閑置的linux開發(fā)板iMX6ULL一直在吃灰,不用來搞點事情,總覺得對不住它。業(yè)余打發(fā)時間就玩起來吧,總比刷某音強。從某多多上買來一個usb接口的游戲手柄,讓開發(fā)板支持以下它,后續(xù)就可以接著在上面玩童年經(jīng)典游戲啦。 ?我使用的是正點原子的I.MX6U-ALPHA 開發(fā)板,

    2024年02月14日
    瀏覽(39)
  • 一些AG10K FPGA 調(diào)試的建議-Douglas

    一些AG10K FPGA 調(diào)試的建議-Douglas

    PLL AGM FPGA 在配置成功時,PLL 已經(jīng)完成鎖定,lock 信號已經(jīng)變高;如果原設計中用 lock 信號輸出實現(xiàn)系統(tǒng) reset 的復位功能,就不能正確完成上電復位;同時,為了保證 PLL 相移的穩(wěn)定,我們需要在 PLL 啟動后做個延時的復位,設計中可以參考下面 Verilog 代碼,這里需要 PLL 的

    2024年02月03日
    瀏覽(24)
  • 一款劇情特別優(yōu)秀的ARPG 游戲《FC魔神英雄傳》

    一款劇情特別優(yōu)秀的ARPG 游戲《FC魔神英雄傳》

    《魔神英雄傳》是一款由FC游戲機平臺發(fā)行的經(jīng)典角色扮演游戲。該游戲最初于1992年發(fā)布,由日本游戲開發(fā)公司Hudson Soft開發(fā),并由日本電子游戲公司Konami發(fā)行。 《魔神英雄傳》的故事背景設定在一個幻想的世界中,玩家扮演一位年輕的英雄,旅行于各種地點,與各種敵人戰(zhàn)

    2024年02月16日
    瀏覽(16)
  • 單片機開發(fā)---ESP32S3移植NES模擬器(二)

    單片機開發(fā)---ESP32S3移植NES模擬器(二)

    《單片機開發(fā)—ESP32-S3模塊上手》 《單片機開發(fā)—ESP32S3移植lvgl+觸摸屏》 《單片機開發(fā)—ESP32S3移植NES模擬器(一)》 暖場視頻,小時候稱這個為—超級曲線射門!?。。。。。。。。?ESP32上天使之翼游戲 看門狗 源碼中有兩處看門狗的喂狗操作,前期都被注釋掉了。 因為開

    2023年04月09日
    瀏覽(138)
  • 單片機開發(fā)---ESP32S3移植NES模擬器(一)

    單片機開發(fā)---ESP32S3移植NES模擬器(一)

    《單片機開發(fā)—ESP32-S3模塊上手》 《單片機開發(fā)—ESP32S3移植lvgl+觸摸屏》 依舊是參考韋東山老師的作品來移植的 《ESP32|爺青回!ESP32(單片機) NES模擬器_NES游戲機掌機教程(開源+詳細講解實現(xiàn)代碼!)》 韋老師已經(jīng)將代碼開源,喜歡的朋友當然是可以去支持一波。 另外還有g(shù)i

    2023年04月16日
    瀏覽(45)
  • NX二次開發(fā)UF_CURVE_section_from_perpcrv_planes 函數(shù)介紹

    NX二次開發(fā)UF_CURVE_section_from_perpcrv_planes 函數(shù)介紹

    Defined in: uf_curve.h? int UF_CURVE_section_from_perpcrv_planes(UF_CURVE_section_general_data_p_t general_data, UF_CURVE_section_perpcrv_data_p_t perpcrv_data, tag_t * section_curves ) Creates an associative section curve feature or non-associative group of section curves using a set of planes perpendicular to a curve. NOTE - If an object in the general da

    2024年02月03日
    瀏覽(22)
  • fpga中Spartan6系列開發(fā)板和VGA顯示實現(xiàn)貪吃蛇游戲設計

    fpga中Spartan6系列開發(fā)板和VGA顯示實現(xiàn)貪吃蛇游戲設計

    魚弦:CSDN內(nèi)容合伙人、CSDN新星導師、全棧領(lǐng)域創(chuàng)作新星創(chuàng)作者 、51CTO(Top紅人+專家博主) 、github開源愛好者(go-zero源碼二次開發(fā)、游戲后端架構(gòu) https://github.com/Peakchen) 需要用ise 14.7,板卡為spantan6系列,VGA顯示實現(xiàn)貪吃蛇游戲的設計 ,需要一整套工程文件。 1.實現(xiàn)貪吃蛇游

    2024年02月03日
    瀏覽(49)
  • Fpga開發(fā)筆記(二):高云FPGA發(fā)開發(fā)軟件Gowin和高云fpga基本開發(fā)過程

    Fpga開發(fā)筆記(二):高云FPGA發(fā)開發(fā)軟件Gowin和高云fpga基本開發(fā)過程

    若該文為原創(chuàng)文章,轉(zhuǎn)載請注明原文出處 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/135620590 紅胖子網(wǎng)絡科技博文大全:開發(fā)技術(shù)集合(包含Qt實用技術(shù)、樹莓派、三維、OpenCV、OpenGL、ffmpeg、OSG、單片機、軟硬結(jié)合等等)持續(xù)更新中… 上一篇:《Fpga開發(fā)筆記(一):

    2024年01月16日
    瀏覽(24)
  • FPGA學習筆記-1 FPGA原理與開發(fā)流程

    FPGA學習筆記-1 FPGA原理與開發(fā)流程

    注:筆記主要參考: B站 正點原子 教學視頻“正點原子手把手教你學FPGA-基于達芬奇Pro開發(fā)板 Artix-7 XC7A35T/XC7A100T”。 小梅哥愛漂流 教學視頻“【零基礎(chǔ)輕松學習FPGA】小梅哥Xilinx FPGA基礎(chǔ)入門到項目應用培訓教程”。 B站搬運 “特權(quán)同學2020版《深入淺出玩轉(zhuǎn)FPGA視頻教程》

    2024年02月05日
    瀏覽(22)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包