GOWIN-लोगो

GOWIN FPGA विकास मंडळ RISCV प्रोग्रामिंग

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-उत्पादन-प्रतिमा

कॉपीराइट © 2022 ग्वांगडोंग गोविन सेमीकंडक्टर कॉर्पोरेशन. सर्व हक्क राखीव.
Guangdong Gowin Semiconductor Corporation चा ट्रेडमार्क आहे आणि चीन, US पेटंट आणि ट्रेडमार्क कार्यालय आणि इतर देशांमध्ये नोंदणीकृत आहे. ट्रेडमार्क किंवा सेवा चिन्ह म्हणून ओळखले जाणारे इतर सर्व शब्द आणि लोगो त्यांच्या संबंधित धारकांची मालमत्ता आहेत. या दस्तऐवजाचा कोणताही भाग GOWINSEMI च्या पूर्व लेखी संमतीशिवाय कोणत्याही स्वरूपात किंवा कोणत्याही संकेत, इलेक्ट्रॉनिक, यांत्रिक, फोटोकॉपी, रेकॉर्डिंग किंवा अन्यथा पुनरुत्पादित किंवा प्रसारित केला जाऊ शकत नाही.

अस्वीकरण
GOWINSEMI कोणतेही दायित्व गृहीत धरत नाही आणि कोणतीही हमी प्रदान करत नाही (एकतर व्यक्त किंवा निहित) आणि GOWINSEMI अटी आणि शर्तींमध्ये नमूद केल्याशिवाय सामग्री किंवा बौद्धिक संपत्तीच्या वापरामुळे आपल्या हार्डवेअर, सॉफ्टवेअर, डेटा किंवा मालमत्तेला झालेल्या कोणत्याही नुकसानीसाठी जबाबदार नाही. विक्री. या दस्तऐवजातील सर्व माहिती प्राथमिक मानली जावी. GOWINSEMI या दस्तऐवजात कोणत्याही वेळी पूर्वसूचना न देता बदल करू शकते. या दस्तऐवजीकरणावर विसंबून असलेल्या कोणीही वर्तमान दस्तऐवजीकरण आणि त्रुटीसाठी GOWINSEMI शी संपर्क साधावा.

पुनरावृत्ती इतिहास

तारीख आवृत्ती वर्णन
२०२०/१०/२३ 1.0E प्रारंभिक आवृत्ती प्रकाशित.
 

२०२०/१०/२३

 

1.1E

  • AndeSight RDS v311 सॉफ्टवेअर अपडेट केले.
  • संदर्भ डिझाइन अद्यतनित केले.
  • SPI फ्लॅश द्वारे एम्बेडेड प्रकल्प संकलन परिणाम डाउनलोड करण्याचे वर्णन अद्यतनित केले आहे.

परिचय

AE250 परिचय

AE250 ही 32-बिट RISC-V MCU प्रणाली आहे; त्याची रचना आकृती 1-1 मध्ये दर्शविली आहे.

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-1

आकृती 1-1 AE250 स्ट्रक्चर डायग्राम

Gowin FPGA विकास मंडळावर आधारित, RISC-V AE250 MCU विकास आणि डीबगिंग प्रणाली आकृती 1-2 मध्ये दर्शविली आहे.

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-2

आकृती 1-2 विकास आणि डीबगिंग सिस्टम स्ट्रक्चर आकृती

डेव्हलपमेंट बोर्डवरील FPGA चिप PC मध्ये Gowin प्रोग्रामर वापरून AE250 MCU म्हणून कॉन्फिगर केली आहे, डीबग केबल कनेक्ट केल्यानंतर, तुम्ही AndeSight RDS v311 सॉफ्टवेअरसह एम्बेडेड प्रोग्राम डेव्हलपमेंट आणि डीबगिंग करू शकता.

तयारी

विकास आणि डीबगिंगसाठी Gowin FPGA आणि AE250 वापरण्यापूर्वी, खालील साधने तयार करणे आवश्यक आहे:

  1. FPGA विकास मंडळाची गोविन GW2A मालिका.
  2. FPGA चिप कॉन्फिगर आणि डाउनलोड करण्यासाठी गोविन सॉफ्टवेअर इंस्टॉलेशन पॅकेज.
  3. एम्बेडेड प्रोग्राम विकसित आणि डीबग करण्यासाठी AndeSight RDS v311 इंस्टॉलेशन पॅकेज.
  4. एम्बेडेड प्रोग्राम डाउनलोड आणि डीबग करण्यासाठी डीबग केबल वापरली जाते आणि डीफॉल्ट AICE-MINI+ आहे; वापरकर्त्यांनी ते स्वतःच खरेदी करणे आवश्यक आहे.

टीप! 

  1. UART द्वारे माहिती आउटपुट करायची असल्यास, UART ते USB केबल आवश्यक आहे.
  2. वापरण्यासाठी इतर उपकरणे आवश्यक आहेत.
विकास आणि डीबगिंग चरण

GW250A-2C विकास मंडळावर आधारित RISC-V AE55 MCU विकसित आणि डीबग करण्यासाठी मूलभूत पायऱ्या खालीलप्रमाणे आहेत:

  1. सॉफ्टवेअर स्थापित करा: गोविन सॉफ्टवेअरचा वापर AE250 RTL डिझाइन कॉन्फिगर आणि जनरेट करण्यासाठी आणि बिटस्ट्रीम व्युत्पन्न करण्यासाठी केला जातो file डिझाइनचे; AndeSight RDS v311 सॉफ्टवेअर एम्बेडेड प्रोग्राम विकसित आणि डीबग करण्यासाठी वापरले जाते; डीबगिंगसाठी इतर सॉफ्टवेअर्स आणि ड्रायव्हर्स देखील आवश्यक आहेत.
  2. विकास मंडळाचा वीज पुरवठा आणि डाउनलोड केबल कॉन्फिगर करा. बिटस्ट्रीम file AE250_chip चे गोविन प्रोग्रामर वापरून डेव्हलपमेंट बोर्डवरील FPGA चिपवर डाउनलोड केले जाते आणि AE250 डेव्हलपमेंट बोर्डवर चालू आहे.
  3. नवीन एम्बेडेड प्रोजेक्ट तयार करण्यासाठी RDS सॉफ्टवेअर उघडा किंवा एन्कोडिंग, कंपाइलिंग आणि इतर ऑपरेशन्ससाठी विद्यमान प्रोजेक्ट उघडा. AE250 डीबगिंगसाठी वापरलेली डीबग केबल कनेक्ट करा, AE250 मधील इंस्ट्रक्शन मेमरी (ILM) मध्ये प्रोजेक्ट कंपाइलेशन रिझल्ट डाउनलोड करा आणि चिपवर डीबगिंग सुरू करा.
  4. डीबगिंग दरम्यान, तुम्ही AE250 चा UART इंटरफेस PC ला जोडण्यासाठी UART ते USB केबल वापरू शकता, इनपुट आणि आउटपुट ऑपरेशन्स ऑपरेट करण्यासाठी RDS मधील अंगभूत सिरीयल टर्मिनल वापरू शकता. इनपुट/आउटपुट ऑपरेशन्ससाठी LED इंडिकेटर, की किंवा बाह्य पिनशी कनेक्ट करण्यासाठी तुम्ही GPIO वापरू शकता; I2C, SPI, इथरनेट आणि इतर गौण घटक देखील वापरण्यासाठी निवडले जाऊ शकतात.
  5. AE250 SPI द्वारे फ्लॅशशी कनेक्ट करू शकते, एम्बेडेड प्रोग्रामचे संकलन परिणाम गोविन प्रोग्रामर वापरून फ्लॅशवर डाउनलोड करू शकते; चिप चालू केल्यावर, AE250 SPI फ्लॅशमध्ये एम्बेड केलेला प्रोग्राम स्वयंचलितपणे वाचेल आणि सुरू होईल. तुम्ही FPGA Bitstream वाचवणारा Flash पुन्हा वापरू शकता; काही FPGA बिटस्ट्रीम जतन करू शकतात आणि इतर एम्बेडेड प्रोग्राम्सचे संकलन परिणाम जतन करू शकतात. ही एक व्यावहारिक आणि आर्थिक पद्धत आहे.
    तुम्ही धडा 2 डीबग केबल कनेक्शन सूचना, धडा पाहू शकता
    3 RDS साठी सूचना वापरा आणि तपशीलवार पायऱ्यांसाठी धडा 4 संदर्भ डिझाइन.

डीबग केबल कनेक्शन सूचना

RDS + AE250 डीफॉल्टनुसार AICE-MINI+ डीबग केबल वापरते; आकृती 2-1 मध्ये बाहेरील डावीकडे दाखवले आहे, आणि पिन आकृती 2-1 मध्ये उजवीकडे दाखवल्या आहेत. हा 12-पिन इंटरफेस आहे. हे लक्षात घ्यावे की आकृतीमध्ये पिन 1 रिक्त आहे. जेव्हा केबल योग्यरित्या जोडली जाते आणि RDS उघडली जाते, तेव्हा आकृतीमध्ये पिवळ्या बॉक्सने चिन्हांकित केलेला लाल एलईडी दिवा निघून जाईल.
आकृती 2-1 AICE-MINI+ डीबग केबल आणि त्याचे पिन

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-3

AICE-MINI+ डीबग केबलची पिन व्याख्या तक्ता 2-1 मध्ये दर्शविल्याप्रमाणे आहे. हे लक्षात घ्यावे की पिन 1 ची व्याख्या नो कनेक्शन (NC) म्हणून केली जाते, रिक्त एकाशी संबंधित आहे. VREF ला 3.3V पॉवर पिन कनेक्ट करणे आवश्यक आहे आणि GND ला फक्त पिन 3 किंवा पिन 5 कनेक्ट करणे आवश्यक आहे.

सारणी 2-1 AICE-MINI+ डीबग केबल पिन व्याख्या

पिन क्रमांक AICE-MINI+ डीबग केबल पिन
1 NC
2 TSRST_N
3 GND
4 TTMS
5 GND
6 TCK
7 VREF
8 NC
9 NC
10 TTRST_N
11 टीटीडीओ
12 TTDI

RDS साठी सूचना वापरा

RDS स्थापना

इंस्टॉलेशन पॅकेज अनझिप करा आणि Windows/Disk1 प्रविष्ट करा; ते स्थापित करण्यासाठी setup.exe वर डबल-क्लिक करा. स्थापनेदरम्यान कोणत्याही विशेष सेटिंग्जची आवश्यकता नाही. इन्स्टॉलेशन दरम्यान, ड्रायव्हर इन्स्टॉल करायचा की नाही हे विचारणारा डायलॉग बॉक्स पॉप अप होईल, कृपया होय निवडा. स्थापना चरणांसाठी, पहा
AndeSight_RDS_v3.2_Installation_Guide_UM207_V1.0.pdf, जे इंस्टॉलेशन पॅकेजमध्ये आढळू शकते.

  1.  इन्स्टॉलेशन पथ आणि वर्कस्पेस पथ सेट करताना, चिनी वर्ण किंवा जागा समाविष्ट करू नका, अन्यथा रनटाइम त्रुटी मिळेल.
  2. RDS ची वर्तमान आवृत्ती AICE-MINI+ केबलला बाय डीफॉल्ट सपोर्ट करते.
  3. RDS स्थापित केल्यानंतर GOWIN प्रोग्रामर विकास मंडळाशी कनेक्ट होऊ शकत नाही, जो Gowin प्रोग्रामर ड्राइव्हर पुन्हा स्थापित करून निश्चित केला जाऊ शकतो.
  4. अनुक्रमांक आणि प्रमाणपत्रासाठी files, कृपया Gowin Semiconductor Corp शी संपर्क साधा.
नवीन प्रकल्प तयार करा

क्लिक करा File आकृती 3-1 मध्ये दर्शविल्याप्रमाणे, नवीन C प्रोजेक्टचे कॉन्फिगरेशन इंटरफेस प्रविष्ट करण्यासाठी नवीन > प्रकल्प > Andes C प्रकल्प > RDS इंटरफेसवर पुढे.

आकृती 3-1 नवीन प्रकल्प तयार करा

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-4

नवीन C प्रकल्पासाठी, खालील पॅरामीटर्स कॉन्फिगर करणे आवश्यक आहे:

  1. प्रकल्पाचे नाव
  2. स्थान: डीफॉल्ट स्थान हे वर्तमान कार्यस्थान आहे.
  3. कनेक्शन कॉन्फिगरेशन ICE वर सेट केले आहे, हे दर्शविते की विकास मंडळ ICE डीबग केबल वापरून कनेक्ट केलेले आहे. जर एमुलेटर चाचणी प्लॅटफॉर्म म्हणून वापरला असेल, तर कृपया SID निवडा.
  4. चिप प्रो साठीfile, ADP-AE250-N25-GOWIN निवडा, जो Gowin FPGA नुसार ऑप्टिमाइझ केला आहे.
  5. प्रकल्पाच्या प्रकारात एक रिक्त प्रकल्प आणि हॅलो वर्ल्ड ANSI C प्रकल्प समाविष्ट आहे.
  6. टूलचेन्ससाठी, nds32le-elf-mculib-v5m हे डीफॉल्ट आहे.
    नवीन प्रकल्प तयार केल्यानंतर, प्रोजेक्ट एक्सप्लोररमधील प्रकल्पाच्या नावावर उजवे-क्लिक करा, ड्रॉप-डाउन मेनूमधून प्रकल्प तयार करा निवडा किंवा प्रकल्प संकलित करण्यासाठी आणि लिंक करण्यासाठी टूलबारवर " ” क्लिक करा; प्रकल्प स्वच्छ करण्यासाठी ड्रॉप-डाउन मेनूमधून स्वच्छ प्रकल्प निवडा.
प्रकल्प आयात आणि निर्यात करा

आकृती 3-2 मध्ये दाखवल्याप्रमाणे "आयात" किंवा "निर्यात" निवडण्यासाठी प्रोजेक्ट एक्सप्लोररच्या जागेवर उजवे क्लिक करा.

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-5

आकृती 3-2 प्रकल्प आयात/निर्यात करा

प्रोजेक्ट इंपोर्ट करण्यासाठी "इम्पोर्ट > जनरल > एक्सिस्टिंग प्रोजेक्ट इन वर्कस्पेस" वर क्लिक करा आणि आकृती 3-3 मध्ये दाखवल्याप्रमाणे इंटरफेस आहे. "रूट निर्देशिका निवडा" निवडताना, फोल्डरमध्ये प्रकल्प आयात करा; "संग्रहण फाइल निवडा" निवडताना, zip मध्ये प्रकल्प आयात करा.

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-6

आकृती 3-3 प्रकल्प आयात करा

"निर्यात… > संग्रहण निवडा Fileनिर्यात प्रकल्प इंटरफेस उघडण्यासाठी, आकृती 3-4 मध्ये दर्शविल्याप्रमाणे. एक्सपोर्ट करायचा प्रकल्प निवडल्यानंतर, कॉम्प्रेशन फॉरमॅट, सेव्ह पाथ इ. तुम्ही एक्सपोर्ट पूर्ण करू शकता.GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-7

आकृती 3-4 प्रकल्प निर्यात करा

फ्लॅशवर प्रोग्राम्स डाउनलोड करा

AE250 फ्लॅशपासून सुरू होऊन सपोर्ट करते, त्यानंतर फ्लॅशवरून एम्बेड केलेला प्रोग्राम SPI इंटरफेसद्वारे वाचतो आणि तो ILM मध्ये संग्रहित करतो आणि त्यानंतर एम्बेड केलेला प्रोग्राम कार्यान्वित केला जातो. FPGA Bitstream वाचवणारी SPI Flash पुन्हा वापरण्याची शिफारस केलेली पद्धत आहे; FPGA बिटस्ट्रीम सेव्ह करण्यासाठी फ्लॅशचा पहिला अर्धा भाग वापरा आणि बाकीचा बायनरी सेव्ह करण्यासाठी वापरा fileएम्बेडेड प्रोग्राम्सचे s.

  1. Gowin Software मध्ये IP कोर जनरेटर उघडा आणि AE250 RTL पॅरामीटर्सवर कॉल करा. SMU इंटरफेस उघडण्यासाठी SMU वर डबल-क्लिक करा आणि आकृती 0-80400000 मध्ये दाखवल्याप्रमाणे "सिस्टम रीसेट व्हेक्टर डिफॉल्ट" 3x5 वर सेट करा. बिटस्ट्रीमचा सेव्ह अॅड्रेस म्हणून एकूण 0M बाइट्ससह SPI Flash 0~400000x4 ची जागा सेट करा; 0x400000 पासून सुरू होणारा बायनरीचा सेव्ह अॅड्रेस म्हणून वापरला जातो fileएम्बेडेड प्रोग्राम्सचे s.
    आकृती 3-5 सिस्टम रीसेट व्हेक्टर डीफॉल्ट
    GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-8
  2. SPI1 इंटरफेस उघडण्यासाठी SPI1 वर डबल-क्लिक करा, “SPI1 सपोर्ट” तपासा, आणि आकृती 1 0 मध्ये दाखवल्याप्रमाणे “SPI80400000 मेमरी मॅप स्पेस बेस अॅड्रेस” 3x6 वर सेट करा.
    आकृती 3-6 SPI1 कॉन्फिगरेशन
    GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-9
  3. RTL डिझाइनच्या भौतिक मर्यादांमध्ये, SPI1 इंटरफेस SPI Flash शी जोडलेला असावा आणि SPI1 इंटरफेस खालील तक्त्यानुसार भौतिकदृष्ट्या मर्यादित असावा. वेगवेगळ्या FPGA चिप्ससाठी, MSPI इंटरफेसचे स्थान देखील भिन्न आहे आणि मर्यादा विशिष्ट परिस्थितीसाठी विशिष्ट असावी.
    तक्ता 3-1 SPI1 इंटरफेस भौतिक मर्यादा
    AE250 SPI1 इंटरफेस FPGA MSPI इंटरफेस
    CSN MCSN
    सीएलके MCLK
    मिसो एमएसओ
    मोसी MSI
  4. MSPI इंटरफेस नियमित IO म्हणून पुन्हा वापरा. गोविन सॉफ्टवेअरच्या “प्रोसेस” विंडोमध्ये, “प्लेस आणि रूट” वर उजवे-क्लिक करा, पॉप-अप मेनूमध्ये “कॉन्फिगरेशन” निवडा; "ड्युअल पर्पज पिन" टॅब निवडा आणि "नियमित IO म्हणून MSPI वापरा" तपासा आणि प्लेसमेंट आणि राउटिंग पूर्ण करण्यासाठी "ओके" क्लिक करा.
    आकृती 3-7 MSPI इंटरफेस नियमित IO वर सेट करा
    GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-10
  5. एम्बेडेड प्रोग्राम पॅरामीटर सेटिंग्ज सुधारित करा. प्रथम, लिंकर स्क्रिप्टमध्ये बूटलोडरचे पॅरामीटर्स सुधारित करा. AE250 एम्बेडेड प्रोग्राममधील लिंकर स्क्रिप्ट SAG द्वारे स्वयंचलितपणे व्युत्पन्न केली जात असल्याने file, ते SAG मध्ये सुधारित केले पाहिजे file. ae250.sag उघडा, BOOTLOADER शोधा आणि आकृती 3-8 मध्ये दर्शविल्याप्रमाणे, RTL डिझाइनमधील सिस्टम रीसेट व्हेक्टर डीफॉल्टच्या मूल्यामध्ये बदल करा. नंतर config.h सुधारा. src/bsp/config/config.h उघडा आणि मॅक्रो व्याख्या शोधा
    "BUILD_MODE" आणि "BUILD_BURN" मध्ये सुधारित करा.
    आकृती 3-8 ae250.sag बूटलोडर पॅरामीटर्स सेटिंग
    GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-11

टीप!

    • पॅरामीटर आरटीएल पॅरामीटरच्या सिस्टम रीसेट व्हेक्टर डीफॉल्टच्या मूल्याशी सुसंगत असावा.
    • संकलन सेटिंग्ज सुधारित करा; एम्बेडेड प्रकल्पाच्या नावावर उजवे-क्लिक करा, बिल्ड सेटिंग्ज निवडा; "Objcopy > General" टॅब निवडा आणि "अक्षम करा" अनचेक करा. (ऑटो-जनरेट आउटपुट करू नका file.)

बायनरी व्युत्पन्न करण्यासाठी एम्बेडेड प्रोग्राम पुन्हा कंपाइल करा fileएम्बेडेड प्रकल्पाचा s, आणि डाउनलोड करा fileगोविन प्रोग्रामर बाह्य फ्लॅश सी बिन मोड वापरून एसपीआय फ्लॅश 0x400000 पत्ता.
सुधारित RTL डिझाइन पुन्हा संश्लेषित करा आणि ठेवा आणि रूट करा आणि Gowin प्रोग्रामर बाह्य फ्लॅश मोड वापरून SPI Flash 0x000000 पत्त्यावर डाउनलोड करा.

ऑन-चिप डीबग

संकलन केल्यानंतर, एम्बेडेड प्रकल्पाचे संकलन परिणाम ऑन-चिप डीबगसाठी विकास मंडळाकडे डाउनलोड केले जाऊ शकतात.
config.h सुधारित करा; src/bsp/config/config.h उघडा आणि मॅक्रो व्याख्या BUILD_MODE शोधा; ते BUILD_LOAD मध्ये सुधारित करा आणि एम्बेड केलेला प्रोग्राम पुन्हा कंपाइल करा.
प्रोजेक्ट एक्सप्लोररमधील प्रोजेक्टच्या नावावर उजवे-क्लिक करा आणि ड्रॉप-डाउन मेनूमधून "डीबग म्हणून > MCU प्रोग्राम" निवडा. प्रथमच, आकृती 3-9 मध्ये दर्शविल्याप्रमाणे, "डीबग कॉन्फिगरेशन" सेट करण्यासाठी एक डायलॉग बॉक्स पॉप अप होईल.

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-14

आकृती 3-9 डीबग कॉन्फिगरेशन

"स्टार्टअप" टॅबमध्ये, प्रथम सूचना अंमलात आणण्यापूर्वी प्रोग्राम थांबविण्यासाठी "रीसेट आणि होल्ड" पर्याय तपासा. ऑन-चिप डीबग करण्यापूर्वी ILM मध्ये एम्बेडेड प्रोजेक्टचे संकलन परिणाम डाउनलोड करण्यासाठी या पर्यायाच्या खाली असलेल्या पॅरामीटर बॉक्समध्ये लोड प्रविष्ट करा.
"रनटाइम पर्याय" मध्ये, "ब्रेकपॉइंट येथे सेट करा" तपासा. लेबल एंटर करा, जसे की इनपुट बॉक्समध्ये मुख्य. हे मुख्य फंक्शनच्या सुरुवातीला ब्रेकपॉइंट सेट करू शकते. "रिझ्युम" तपासा, आणि ते ऑन-चिप डीबग प्रविष्ट केल्यानंतर थेट सतत ऑपरेशन सुरू करेल.
ऑन-चिप डीबग प्रविष्ट करताना, ते आपोआप डीबगवर जाते view आणि आकृती 3-10 मध्ये दाखवल्याप्रमाणे क्षेत्र प्रदर्शित केले जाईल. हे क्षेत्र ऑन-चिप डीबगसाठी ऑपरेशन क्षेत्र आहे. डीबगसाठी काही शॉर्टकट बटणे लाल बॉक्समध्ये दर्शविली आहेत. डावीकडून उजवीकडे, त्यांचा अर्थ DEBUG रीस्टार्ट करणे, रन करणे सुरू ठेवणे, निलंबित करणे, समाप्त करणे, डिस्कनेक्ट करणे, एका प्रक्रियेशी लिंक करणे, स्टेप इन, स्टेप ओव्हर, स्टेप रिटर्न आणि इंस्ट्रक्शन स्टेपिंग मोड; या मोडमध्ये, प्रत्येक वेळी ते रिस्क – v असेंब्ली इंस्ट्रक्शन चालवते, अन्यथा प्रत्येक वेळी ते सी स्टेटमेंट चालवते.

लक्षात ठेवा!
राखाडी चिन्हांचा अर्थ असा आहे की ते यावेळी अनुपलब्ध आहेत.
ब्रेकपॉइंट्स द्रुतपणे सेट करण्यासाठी किंवा ब्रेकपॉइंट्स रद्द करण्यासाठी कोड मजकूरातील ओळ क्रमांकावर डावीकडे डबल क्लिक करा आणि पॉप-अप मेनूमधून “रन टू लाइन” निवडण्यासाठी कोड टेक्स्टमध्ये उजवे क्लिक करा.GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-13

आकृती 3-10 डीबग बटणे परिचय

आकृती 3-11 एक असेंबली स्टेटमेंट विंडो आहे जी ILM मध्ये रिअल टाइममध्ये चालणाऱ्या असेंबली सूचनांची सामग्री प्रदर्शित करते.

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-14

आकृती 3-11 असेंब्ली इंस्ट्रक्शन कोड विंडो

RDS अंगभूत सिरीयल टर्मिनल वापर

आकृती 3-12 आरडीएस इंटरफेसमध्ये तयार केलेले UART टर्मिनल दाखवते. तुम्हाला वापरायचे असल्यास, “विंडो > दाखवा वर क्लिक करा View > टर्मिनल" वरच्या मेनूमध्ये "टर्मिनल" विंडो उघडण्यासाठी, आणि नंतर नवीन सीरियल टर्मिनल तयार करण्यासाठी "टर्मिनल उघडा" वर क्लिक करा. पोर्ट नंबर सेट केल्यानंतर (जे असू शकते viewहार्डवेअर मॅनेजरमध्ये ed), बॉड रेट आणि इतर पॅरामीटर्स, वापरणे सुरू करण्यासाठी "ओके" क्लिक करा.

GOWIN-FPGA-विकास-बोर्ड-RISCV-प्रोग्रामिंग-15

आकृती 3-12 RDS अंगभूत सीरियल टर्मिनल

तपशीलांसाठी, दस्तऐवज पहा
AndeSight_RDS_v3.1_User_Manual_UM170_V1.0.pdf, जे इंस्टॉलेशन निर्देशिकेच्या डॉक पथमध्ये आढळू शकते.

संदर्भ डिझाइन

प्रकल्प कोड

की fileAE250 एम्बेडेड प्रोजेक्ट टेम्प्लेटमधील s खालीलप्रमाणे आहेत:

  1. src/bsp/ae250/ae250.h: हे file सिस्टम क्लॉक डेफिनिशन, पेरिफेरल रजिस्टर डेफिनिशन, पेरिफेरल रजिस्टर अॅड्रेस मॅपिंग डेफिनिशन आणि इंटरप्ट्स सोर्स नंबर डेफिनिशन समाविष्ट करते. घड्याळ व्याख्या AE250 पॅरामीटर्स कॉन्फिगरेशनशी सुसंगत असणे आवश्यक आहे.
  2. src/bsp/ae250/ae250.c: reset_handler फंक्शन एम्बेडेड प्रोग्राम सुरू करण्यासाठी एंट्री आहे. एंट्रीमध्ये, मुख्य फंक्शन कार्यान्वित होण्यापूर्वी UART आरंभीकरण केले जाते. आवश्यक UART पोर्ट निवडला आहे आणि आवश्यक बॉड दर AE250 च्या पॅरामीटर कॉन्फिगरेशननुसार कॉन्फिगर केला आहे.
  3. src/bsp/ae250/interrupt.c: हे file AE250 च्या इंटरप्ट हँडलर फंक्शन्सची व्याख्या आहे
  4. src/bsp/config/config.h: हे file संकलित पद्धत नियंत्रित करणारी मॅक्रो व्याख्या समाविष्ट करते. #define BUILD_MODE BUILD_LOAD किंवा BUILD_BURN म्हणून परिभाषित केले जाऊ शकते. BUILD_LOAD म्हणजे प्रोग्राम थेट ILM मध्ये लोड केला जातो आणि तो सामान्यतः डीबग करताना वापरला जातो. BUILD_BURN म्हणजे प्रोग्राम SPI Flash वर डाउनलोड केला जातो आणि प्रोग्राम पॉवर ऑन केल्यानंतर प्रथम SPI Flash वरून ILM वर वाचला जातो आणि नंतर रन होतो, जो रिलीझ आवृत्ती प्रोग्रामला लागू होतो.
  5. Start.S: स्टार्टर file विधानसभा भाषेत लिहिलेले.
  6. src/bsp/loader.c: बूटलोडर file, ज्याचा वापर SPI फ्लॅश पासून सुरू करण्यासाठी केला जातो.
  7. ae250.sag: Sag ही स्कॅटरिंग आणि गॅदरिंग फॉरमॅट स्क्रिप्ट आहे. हे लिंकर स्क्रिप्ट तयार करण्यासाठी वापरले जाते. हे लक्षात घ्यावे की ae250.sag मधील मेमरी मॅप पॅरामीटर्स AE250 मधील मेमरी मॅप पॅरामीटर्सशी सुसंगत असणे आवश्यक आहे.
  8. src/bsp/driver: या निर्देशिकेत दोन फोल्डर्स आहेत, ae250 हा AE250 ड्राइव्हर कोड आहे, ड्रायव्हर फंक्शन्सचा कॉल इंटरफेस समाविष्ट आहे.
  9. src/bsp/lib: यात दोन आहेत files printf.c मध्ये, C मानक लायब्ररीमधील सबफंक्शनचे स्वरूप UART द्वारे प्रिंटफ माहिती आउटपुट करण्यासाठी पुन्हा परिभाषित केले जाते. read.c मध्ये, UART द्वारे इनपुट माहिती वाचण्यासाठी एक साधे कार्य आहे.
संदर्भ डिझाइन

इन्स्टॉलेशननंतर, इन्स्टॉलेशन डिरेक्टरीच्या डेमो फोल्डरमध्ये किंवा संदर्भ डिझाइन झिपमध्ये अनेक मूलभूत संदर्भ डिझाइन आढळू शकतात. webजागा; संदर्भ डिझाइन चाचणी, डीबगिंग आणि आयात करण्याच्या मार्गाने पुनर्विकासासाठी RDS मध्ये लोड केले जाऊ शकते. संदर्भ डिझाइन खालीलप्रमाणे दर्शविल्या आहेत:

  1. ae250_demo: AE250 चे UART इनपुट/आउटपुट आणि GPIO आउटपुट प्रदर्शित करते.
  2. ae250_plic: इंटरप्ट कंट्रोलरचा इंटरप्टला प्रतिसाद दाखवतो आणि मशीन टाइमर आणि पिट टाइमरचे प्रात्यक्षिक प्रदान करतो.
  3. ae250_freertos: AE250 पोर्ट एम्बेड केलेले दाखवते
    रिअल-टाइम ऑपरेटिंग सिस्टम फ्रीआरटीओएस मल्टी-थ्रेडिंग रनिंग प्रोग्राम.
  4. ae250_ucosiii: AE250 पोर्ट्स रीअल-टाइम ऑपरेटिंग सिस्टम uC/OS-III मल्टी-थ्रेडिंग रनिंग प्रोग्राम एम्बेडेड असल्याचे दाखवते.

कागदपत्रे / संसाधने

GOWIN FPGA विकास मंडळ RISCV प्रोग्रामिंग [pdf] वापरकर्ता मार्गदर्शक
FPGA विकास मंडळ RISCV प्रोग्रामिंग, बोर्ड RISCV प्रोग्रामिंग, FPGA विकास RISCV प्रोग्रामिंग, RISCV प्रोग्रामिंग, बोर्ड RISCV

संदर्भ

एक टिप्पणी द्या

तुमचा ईमेल पत्ता प्रकाशित केला जाणार नाही. आवश्यक फील्ड चिन्हांकित आहेत *