UG0837
Օգտագործողի ուղեցույց
IGLOO2 և SmartFusion2 FPGA
Համակարգային ծառայությունների մոդելավորում
հունիսի 2018թ
Վերանայման պատմություն
Վերանայման պատմությունը նկարագրում է այն փոփոխությունները, որոնք իրականացվել են փաստաթղթում: Փոփոխությունները թվարկված են վերանայմամբ՝ սկսած ամենաարդիական հրապարակումից:
1.1 Վերանայման 1.0
Revision 1.0-ը հրապարակվել է 2018 թվականի հունիսին: Դա այս փաստաթղթի առաջին հրապարակումն էր:
IGLOO2 և SmartFusion2 FPGA համակարգի ծառայությունների մոդելավորում
SmartFusion®2 FPGA ընտանիքի System Services բլոկը պարունակում է ծառայությունների հավաքածու, որը պատասխանատու է տարբեր խնդիրների համար: Դրանք ներառում են սիմուլյացիոն հաղորդագրությունների ծառայություններ, տվյալների ցուցիչի ծառայություններ և տվյալների նկարագրիչ ծառայություններ: Համակարգի ծառայությունները հասանելի են Cortex-M3-ի միջոցով SmartFusion2-ում և FPGA գործվածքից՝ գործվածքների ինտերֆեյսի կարգավորիչի (FIC) միջոցով և՛ SmartFusion2-ի, և՛ IGLOO®2-ի համար: Մուտքի այս մեթոդներն ուղարկվում են համակարգի վերահսկիչին COMM_BLK-ի միջոցով: COMM_BLK-ն ունի առաջադեմ ծայրամասային ավտոբուս (APB) ինտերֆեյս և գործում է որպես հաղորդագրություն փոխանցող խողովակ՝ համակարգի վերահսկիչի հետ տվյալների փոխանակման համար: Համակարգի ծառայության հարցումները ուղարկվում են համակարգի վերահսկիչին, իսկ համակարգի ծառայության պատասխանները ուղարկվում են CoreSysSerrvice՝ COMM BLK-ի միջոցով: COMM_BLK-ի հասցեի գտնվելու վայրը հասանելի է միկրոկառավարիչի ենթահամակարգի (MSS)/բարձր արդյունավետության հիշողության ենթահամակարգի (HPMS) ներսում: Մանրամասների համար տե՛ս UG0450. SmartFusion2 SoC և IGLOO2 FPGA System Controller:
Օգտագործողի ուղեցույց
Հետևյալ նկարը ցույց է տալիս համակարգի ծառայությունների տվյալների հոսքը:
Նկար 1 • Համակարգի ծառայության տվյալների հոսքի դիագրամԵ՛վ IGLOO2, և՛ SmartFusion2 համակարգերի ծառայության մոդելավորման համար դուք պետք է ուղարկեք համակարգի ծառայության հարցումներ և ստուգեք համակարգի ծառայության պատասխանները՝ ստուգելու համար, որ մոդելավորումը ճիշտ է: Այս քայլը անհրաժեշտ է համակարգի վերահսկիչին մուտք գործելու համար, որն ապահովում է համակարգի ծառայությունները: Համակարգի կարգավորիչին գրելու և կարդալու եղանակը տարբեր է IGLOO2 և SmartFusion2 սարքերի համար: SmartFusion2-ի համար Coretex-M3-ը հասանելի է, և դուք կարող եք գրել և կարդալ համակարգի կարգավորիչից՝ օգտագործելով ավտոբուսի ֆունկցիոնալ մոդելի (BFM) հրամանները: IGLOO2-ի համար Cortex-M3-ը հասանելի չէ, և համակարգի վերահսկիչը հասանելի չէ BFM հրամանների միջոցով:
2.1 Հասանելի համակարգի ծառայությունների տեսակները
Առկա են երեք տարբեր տեսակի համակարգային ծառայություններ, և ծառայության յուրաքանչյուր տեսակ ունի տարբեր ենթատեսակներ:
Մոդելավորման հաղորդագրությունների ծառայություններ
Տվյալների ցուցիչի ծառայություններ
Տվյալների նկարագրության ծառայություններ
Այս ուղեցույցի Հավելված – Համակարգային ծառայությունների տեսակները (տես էջ 19) գլուխը նկարագրում է համակարգի ծառայությունների տարբեր տեսակները: Համակարգային ծառայությունների մասին լրացուցիչ տեղեկությունների համար տե՛ս UG0450. SmartFusion2 SoC և IGLOO2 FPGA System Controller User Guide:
2.2 IGLOO2 համակարգի սպասարկման մոդելավորում
Համակարգային ծառայությունները ներառում են գրել և կարդալ համակարգի վերահսկիչից: Մոդելավորման նպատակով համակարգի վերահսկիչին գրելու և կարդալու համար հարկավոր է կատարել հետևյալ քայլերը.
- Ստեղծեք CoreSysServices-ի փափուկ IP միջուկը, որը հասանելի է SmartDesign կատալոգում:
- Գրեք HDL կոդը վերջավոր վիճակի մեքենայի համար (FSM):
HDL FSM-ը կապվում է CoreSysServices Core-ի հետ, որը ծառայում է որպես AHBLite ավտոբուսի գործվածքների վարպետ: CoreSysServices-ի միջուկը սկսում է համակարգի ծառայության հարցումը COMM BLK-ին և ստանում է համակարգային ծառայության պատասխաններ COMM BLK-ից FIC_0/1 գործվածքային միջերեսի կարգավորիչի միջոցով, ինչպես ցույց է տրված հետևյալ նկարում:
Նկար 2 • IGLOO2 System Services Simulation Topology2.3 SmartFusion2 համակարգի ծառայության մոդելավորում
SmartFusion2 սարքերում համակարգային ծառայությունները մոդելավորելու համար հարկավոր է գրել և կարդալ համակարգի կարգավորիչից: Մոդելավորման նպատակով համակարգի վերահսկիչին մուտք գործելու երկու տարբերակ կա:
Տարբերակ 1 — Գրեք HDL կոդը, որպեսզի FSM-ը ինտերֆեյս ունենա CoreSysService փափուկ IP միջուկի հետ, որը ծառայում է որպես AHBLite գործվածքների վարպետ և սկսում է համակարգի ծառայության հարցումը COMM BLK-ին և ստանում է համակարգի ծառայության պատասխանները COMM BLK-ից FIC_0/1 գործվածքի միջոցով: ինտերֆեյս, ինչպես ցույց է տրված հետևյալ նկարում:
Նկար 3 • SmartFusion2 System Services Simulation Topology
Տարբերակ 2 - Քանի որ Cortex-M3-ը հասանելի է SmartFusion2 սարքերի համար, դուք կարող եք օգտագործել BFM հրամանները՝ համակարգի կարգավորիչի հիշողության տարածությունից ուղղակիորեն գրելու և կարդալու համար:
BFM հրամանների օգտագործումը (տարբերակ 2) փրկում է FSM-ի համար HDL կոդերը գրելու անհրաժեշտությունը: Օգտագործողի այս ուղեցույցում 2-րդ տարբերակն օգտագործվում է SmartFusion2-ում համակարգի ծառայությունների մոդելավորումը ցուցադրելու համար: Այս տարբերակով համակարգի կարգավորիչի հիշողության տարածքը հասանելի է դառնում՝ պարզելու COMM BLK-ի հիշողության քարտեզը և գործվածքների ինտերֆեյսի ընդհատման կարգավորիչի (FIIC) բլոկի հիշողության քարտեզը, երբ դուք գրում եք ձեր BFM հրամանները:
2.4 Մոդելավորում Օրինակamples
Օգտագործողի ուղեցույցը ներառում է հետևյալ մոդելավորումները.
- IGLOO2 սերիական համարի ծառայության մոդելավորում (տես էջ 5)
- SmartFusion2 սերիական համարի ծառայության մոդելավորում (տես էջ 8)
- IGLOO2 Zeroization Service Simulation (տես էջ 13)
- SmartFusion2 Zeroization Service Simulation (տես էջ 16)
Նմանատիպ մոդելավորման մեթոդները կարող են կիրառվել այլ համակարգային ծառայությունների համար: Համակարգի տարբեր հասանելի ծառայությունների ամբողջական ցանկի համար անցեք Հավելված – Համակարգային ծառայությունների տեսակները (տես էջ 19):
2.5 IGLOO2 սերիական համարի ծառայության մոդելավորում
IGLOO2 սերիական համարի ծառայության մոդելավորմանը պատրաստվելու համար կատարեք հետևյալ քայլերը.
- Ձեր HPMS բլոկը ստեղծելու համար կանչեք համակարգի ստեղծողին:
- Ստուգեք HPMS System Services վանդակը Սարքի հատկությունների էջում: Սա կհանձնարարի համակարգի ստեղծողին բացահայտել HPMS_FIC_0 SYS_SERVICES_MASTER ավտոբուսի միջերեսը (BIF):
- Մնացած բոլոր վանդակները թողեք չնշված:
- Ընդունեք լռելյայն բոլոր մյուս էջերում և սեղմեք Ավարտել՝ համակարգի ստեղծողի բլոկը ավարտելու համար: Libero® SoC-ի HDL խմբագրիչում գրեք HDL կոդը FSM-ի համար (File > Նոր > HDL): Ներառեք հետևյալ երեք վիճակները ձեր FSM-ում.
INIT վիճակ (սկզբնական վիճակ)
SERV_PHASE (ծառայության հարցման վիճակը)
RSP_PHASE (ծառայության արձագանքման վիճակ):
Հետևյալ նկարը ցույց է տալիս FSM-ի երեք վիճակները:
Գծապատկեր 4 • Երեք-պետական FSM FSM-ի ձեր HDL կոդում օգտագործեք ճիշտ հրամանի կոդը («01» Hex սերիական համարի ծառայության համար)՝ INIT վիճակից ծառայության հարցման վիճակը մուտքագրելու համար:
- Պահպանեք ձեր HDL-ը file. FSM-ը հայտնվում է որպես բաղադրիչ Դիզայնի հիերարխիայում:
- Բացեք SmartDesign-ը: Քաշեք և գցեք ձեր վերին մակարդակի համակարգի ստեղծող բլոկը և ձեր FSM բլոկը SmartDesign կտավի մեջ: Կատալոգից քաշեք և թողեք CoreSysService-ի փափուկ IP միջուկը SmartDesign կտավի մեջ:
- Կազմաձևիչը բացելու համար սեղմեք CoreSysService փափուկ IP միջուկի վրա: Ստուգեք «Սերիական համարների ծառայության» վանդակը (Սարքի և դիզայնի տեղեկատվական ծառայությունների տակ):
խումբ) սերիական համարի ծառայությունը միացնելու համար: - Մնացած բոլոր վանդակները թողեք չնշված: Կտտացրեք OK՝ կոնֆիգուրատորից դուրս գալու համար:
Նկար 5 • CoreSysServices soft IP Core Configurator
- Միացրեք համակարգի ստեղծող բլոկի HPMS_FIC_0 SYS_SERVICES_MASTER BIF-ը CoreSysService բլոկի AHBL_MASTER BIF-ին:
- Միացրեք ձեր HDL FSM բլոկի ելքը CoreSysService փափուկ IP միջուկի մուտքին: Կատարեք բոլոր մյուս կապերը SmartDesign կտավում, ինչպես ցույց է տրված հետևյալ նկարում:
Նկար 6 • SmartDesign կտավ HDL բլոկով, CoreSysServices Soft IP և HPMS բլոկներով - SmartDesign-ի կտավում աջ սեղմեք >Ստեղծեք բաղադրիչ՝ վերին մակարդակի դիզայն ստեղծելու համար:
- Դիզայնի հիերարխիայում view, աջ սեղմեք վերին մակարդակի դիզայնի վրա և ընտրեք ստեղծել Testbench > HDL:
- Տեքստ ստեղծելու համար օգտագործեք տեքստային խմբագրիչ file «status.txt» անունով:
- Ներառեք համակարգի ծառայության հրամանը և 128-բիթանոց սերիական համարը: Լրացուցիչ տեղեկությունների համար տե՛ս Աղյուսակ 1-ը (Համակարգային ծառայությունների հրաման/արձագանքման արժեքներ) CoreSysServices v3.1 ձեռնարկ հրամանի կոդերի համար (Hex), որոնք պետք է օգտագործվեն համակարգի տարբեր ծառայությունների համար: Սերիական համարի ծառայության համար հրամանի կոդը «01» Hex է:
Status.txt-ի ձևաչափը file սերիական համարների սպասարկման համար հետևյալն է.
< 2 վեցնիշ CMD <32 վեցանիշ Սերիական համար>
Example: 01A1A2A3A4B1B2B3B4C1C2C3C4D1D2D3D4
Պահպանեք status.txt-ը file ձեր նախագծի Simulation պանակում: Դիզայնն այժմ պատրաստ է սիմուլյացիայի համար:
Ծառայությունը սկսելուց հետո հաղորդագրություն, որը ցույց է տալիս նպատակակետի գտնվելու վայրը և սերիական համարը, ցուցադրվում է ModelSim տառադարձման պատուհանում, ինչպես ցույց է տրված հետևյալ նկարում:
Նկար 7 • ModelSim Simulation Transcript պատուհանՀամակարգի վերահսկիչը կատարում է AHB գրություն սերիական համարով հասցեին: Ծառայության ավարտից հետո COMM_BLK-ի RXFIFO-ն կբեռնվի ծառայության պատասխանով:
Նշում. Համակարգային տարբեր ծառայությունների համար օգտագործվող հրամանների կոդերի ամբողջական ցանկի համար տե՛ս Աղյուսակ 1 (System Services Command/Response Values) CoreSysServices v3.1 ձեռնարկում կամ UG0450. SmartFusion2 SoC և IGLOO2 FPGA System Controller User Guide:
2.6 SmartFusion2 սերիական համարի ծառայության մոդելավորում
Օգտագործողի այս ուղեցույցում BFM հրամանները (տարբերակ 2) օգտագործվում են համակարգի վերահսկիչ մուտք գործելու համար համակարգի սպասարկման համար: BFM հրամաններն օգտագործվում են, քանի որ Cortex-M3 պրոցեսորը հասանելի է սարքում BFM մոդելավորման համար: BFM հրամանները թույլ են տալիս ուղղակիորեն գրել և կարդալ COMM BLK-ից, երբ իմանաք COMM_BLK-ի հիշողության քարտեզագրումը:
SmartFusion2 սերիական համարի ծառայության մոդելավորման համար ձեր դիզայնը պատրաստելու համար կատարեք հետևյալ քայլերը.
- Քաշեք և թողեք MSS-ը կատալոգից ձեր նախագծի դիզայնի կտավ:
- Անջատեք բոլոր MSS ծայրամասային սարքերը, բացառությամբ MSS_CCC-ի, Վերակայման վերահսկիչի, ընդհատումների կառավարման և FIC_0, FIC_1 և FIC_2:
- Կազմաձևեք ընդհատումների կառավարումը, որպեսզի օգտագործի MSS՝ գործվածքների ընդհատման համար:
- Պատրաստեք serialnum.bfm-ը file տեքստային խմբագրիչում կամ Libero-ի HDL խմբագրիչում: Պահպանեք serialnum.bfm-ը file նախագծի Simulation թղթապանակում: Serialnum.bfm-ը պետք է ներառի հետևյալ մանրամասները.
• Հիշողության քարտեզագրում COMM BLK-ին (CMBLK)
• Հիշողության քարտեզագրում՝ կառավարման ծայրամասային սարքն ընդհատելու համար (FIIC)
• Սերիական համարի համակարգի ծառայության հարցումի հրաման («01» Hex)
• Հասցե սերիական համարի գտնվելու վայրի համար
Նախկինample serialnum.bfm file հետեւյալն է.
memmap FIIC 0x40006000; #Հիշողության քարտեզագրում ընդհատումների կառավարման համար
memmap CMBLK 0x40016000; #Հիշողության քարտեզագրում COMM BLK-ում
memmap DESCRIPTOR_ADDR 0x20000000; #Հասցեի գտնվելու վայրը Սերիական համարի համար
#Հրամանային ծածկագիր տասնվեցական
հաստատուն CMD 0x1 # Comand code for Serial NumberService
#FIIC կոնֆիգուրացիայի ռեգիստրներ
հաստատուն FICC_INTERRUPT_ENABLE0 0x0
#COMM_BLK Կազմաձևման ռեգիստրներ
հաստատուն CONTROL 0x00
հաստատուն STATUS 0x04
հաստատուն INT_ENABLE 0x08
հաստատուն DATA8 0x10
հաստատուն DATA32 0x14
հաստատուն FRAME_START8 0x18
հաստատուն FRAME_START32 0x1C
ընթացակարգի հերթական համարը;
ամբողջ x;
գրել w FIIC FICC_INTERRUPT_ENABLE0 0x20000000 #Կարգավորել
#FICC_INTERRUPT_ENABLE0 # Գրանցվեք՝ COMBLK_INTR #-ը միացնելու համար
#interrupt COMM_BLK բլոկից մինչև գործվածք
#Հարցման փուլ
գրել w CMBLK CONTROL 0x10 # Կարգավորել COMM BLK Control #Գրանցվել
միացնել փոխանցումները COMM BLK ինտերֆեյսի վրա
գրել w CMBLK INT_ENABLE 0x1 # Կարգավորել COMM BLK ընդհատումը Միացնել
#Գրանցվել՝ TXTOKAY-ի համար ընդհատումը միացնելու համար (համապատասխան բիթ
#կարգավիճակի գրանցում)
սպասել 19 # սպասել COMM BLK ընդհատում , Այստեղ #BFM սպասում է
#մինչև COMBLK_INTR-ը հաստատված է
readstore w CMBLK STATUS x # Read COMM BLK Status Գրանցվել #TXTOKAY-ի համար
#Ընդհատել
սահմանել xx & 0x1
եթե x
գրել w CMBLK FRAME_START8 CMD # Կարգավորել COMM BLK FRAME_START8
#Գրանցվեք՝ Serial Number ծառայությունը խնդրելու համար
էնդիֆ
էնդիֆ
սպասել 19 # սպասել COMM BLK ընդհատում , Այստեղ
#BFM-ը սպասում է, մինչև COMBLK_INTR հաստատվի
readstore w CMBLK STATUS x # Read COMM BLK Status Գրանցման համար
#TXTOKAY Ընդհատում
սահմանել xx & 0x1
սահմանել xx & 0x1
եթե x
գրել w CMBLK CONTROL 0x14 #Configure COMM BLK Control
#Գրանցվեք՝ COMM BLK ինտերֆեյսի վրա փոխանցումները միացնելու համար
գրել w CMBLK DATA32 DESCRIPTOR_ADDR
գրել w CMBLK INT_ENABLE 0x80
գրել w CMBLK CONTROL 0x10
էնդիֆ
սպասել 20
#Արձագանքման փուլ
սպասել 19
readstore w CMBLK STATUS x
սահմանել xx & 0x80
եթե x
նորից ստուգեք w CMBLK FRAME_START8 CMD
գրել w CMBLK INT_ENABLE 0x2
էնդիֆ
սպասել 19
readstore w CMBLK STATUS x
սահմանել xx & 0x2
եթե x
վերստուգել w CMBLK DATA8 0x0
գրել w CMBLK CONTROL 0x18
էնդիֆ
սպասել 19
վերստուգեք w FIIC 0x8 0x20000000
readstore w CMBLK STATUS x
սահմանել xx & 0x2
եթե x
վերստուգել w CMBLK DATA32 DESCRIPTOR_ADDR
էնդիֆ
վերստուգել w DESCRIPTOR_ADDR 0x0 0xE1E2E3E4; #Readcheck՝ S/N-ը ստուգելու համար
վերստուգել w DESCRIPTOR_ADDR 0x4 0xC1C2C3C4; #Readcheck՝ S/N-ը ստուգելու համար
վերստուգել w DESCRIPTOR_ADDR 0x8 0xB1B2B3B4; #Readcheck՝ S/N-ը ստուգելու համար
վերստուգել w DESCRIPTOR_ADDR 0xC 0xA1A2A3A4; #Readcheck՝ S/N-ը ստուգելու համար
վերադարձ - Ստեղծեք կարգավիճակ. txt file Libero-ի HDL խմբագրիչում կամ ցանկացած տեքստային խմբագրիչում: Ներառեք սերիական համարի համակարգի ծառայության հրամանը («01» Hex-ում) և սերիական համարը կարգավիճակում: txt file. Տե՛ս CoreSysServices v3.1 ձեռնարկը՝ ճիշտ հրամանի կոդը օգտագործելու համար:
- Սրա շարահյուսությունը file սերիական համարի ծառայության համար է, <2 վեցանիշ CMD>< 32 վեցանիշ Սերիական համար> : Օրինակ՝ample: 01A1A2A3A4B1B2B3B4C1C2C3C4E1E2E3E4.
- Պահպանեք .txt կարգավիճակը file նախագծի Simulation թղթապանակում:
- Խմբագրել օգտատիրոջը .bfm (գտնվում է Simulation թղթապանակի ներսում), որպեսզի ներառի սերիական համարը: bfm file և զանգահարեք սերիական համարի ընթացակարգը, ինչպես ցույց է տրված հետևյալ կոդի հատվածում:
ներառել «serialnum.bfm» #include the serialnum.bfm
պրոցեդուրա user_main;
տպել «INFO:Simulation Starts»;
տպել «INFO:Service Command Code in decimal:%0d», CMD ;
զանգահարել սերիական համարին; #զանգահարեք սերիալնումի պրոցեդուրան
տպել «INFO:Simulation Ends»;
վերադարձ - Դիզայնի հիերարխիայում view, ստեղծեք թեստային նստարան (Աջ սեղմեք, Վերին մակարդակի դիզայն > Ստեղծեք թեստային նստարան > HDL ) և դուք պատրաստ եք գործարկել սերիական համարների ծառայության մոդելավորումը։
Ծառայությունը սկսելուց հետո ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս նպատակակետի գտնվելու վայրը և սերիական համարը: Համակարգի վերահսկիչը կատարում է AHB գրություն սերիական համարով հասցեին: Ծառայության ավարտից հետո COMM_BLK-ի RXFIFO-ն կբեռնվի ծառայության պատասխանով: ModelSim տառադարձման պատուհանը ցույց է տալիս ստացված հասցեն և սերիական համարը, ինչպես ցույց է տրված հետևյալ նկարում:
Նկար 8 • SmartFusion2 սերիական համարի ծառայության մոդելավորում ModelSim-ի տառադարձման պատուհանում
2.7 IGLOO2 Zeroization Service Simulation
IGLOO2 զրոյացման ծառայության մոդելավորմանը պատրաստվելու համար կատարեք հետևյալ քայլերը.
- Հրավիրեք համակարգի ստեղծողին՝ HPMS բլոկ ստեղծելու համար: SYS_SERVICES_MASTER BIF «Սարքի առանձնահատկություններ» բաժնում նշեք HPMS System Services վանդակը: Մնացած բոլոր վանդակները թողեք չնշված: Ընդունեք լռելյայն բոլոր մյուս էջերում և սեղմեք էջը: Սա հրահանգում է համակարգի ստեղծողին բացահայտել HPMS_FIC_0 Finish-ը՝ համակարգի ստեղծող բլոկի կազմաձևումն ավարտելու համար:
- Libero SoC-ի HDL խմբագրիչում գրեք HDL կոդը FSM-ի համար: FSM-ի ձեր HDL կոդում ներառեք հետևյալ երեք վիճակները.
INIT վիճակ (սկզբնական վիճակ)
SERV_PHASE (ծառայության հարցման վիճակը)
RSP_PHASE (ծառայության արձագանքման վիճակ)
Հետևյալ նկարը ցույց է տալիս FSM-ի երեք վիճակները:
Գծապատկեր 9 • Երեք-պետական FSM - Ձեր HDL կոդում օգտագործեք «F0» (Hex) հրամանի կոդը՝ INIT վիճակից ծառայության հարցման վիճակը մուտքագրելու համար:
- Պահպանեք ձեր HDL-ը file.
- Բացեք SmartDesign-ը, քաշեք և գցեք ձեր վերին մակարդակի համակարգի ստեղծող բլոկը և ձեր HDL FSM բլոկը SmartDesign կտավի մեջ: Կատալոգից քաշեք և թողեք CoreSysService-ի փափուկ IP միջուկը SmartDesign կտավի մեջ:
- Աջ սեղմեք CoreSysServices-ի փափուկ IP միջուկի վրա՝ կոնֆիգուրատորը բացելու և «Զրոյացման ծառայության» վանդակը «Տվյալների անվտանգության ծառայություններ» խմբի տակ ստուգելու համար: Մնացած բոլոր վանդակները թողեք չնշված: Սեղմեք OK դուրս գալու համար:
Նկար 10 • CoreSysServices կոնֆիգուրատոր
- Միացրեք համակարգի ստեղծող բլոկի HPMS_FIC_0 SYS_SERVICES_MASTER BIF-ը CoreSysService բլոկի AHBL_MASTER BIF-ին:
- Միացրեք ձեր HDL FSM բլոկի ելքը CoreSysService փափուկ IP միջուկի մուտքին: Կատարեք բոլոր մյուս կապերը SmartDesign կտավում:
Նկար 11 • SmartDesign կտավ HDL բլոկով, CoreSysServices Soft IP-ով և HPMS բլոկներով
9. SmartDesign կտավում ստեղծեք վերին մակարդակի դիզայնը (Աջ սեղմեք > Ստեղծեք բաղադրիչ):
10. Դիզայնի հիերարխիայում view, աջ սեղմեք վերին մակարդակի դիզայնի վրա և ընտրեք ստեղծել Testbench > HDL: Այժմ դուք պատրաստ եք սիմուլյացիա գործարկել:
Ծառայությունը սկսելուց հետո ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս, որ զրոյացումն ավարտվել է x պահին, ինչպես ցույց է տրված հետևյալ նկարում:
Նկար 12 • IGLOO2 Zeroization System Service Simulation Transcript պատուհան
Համակարգի վերահսկիչը կատարում է AHB գրություն սերիական համարով հասցեին: Ծառայության ավարտից հետո COMM_BLK-ի RXFIFO-ն կբեռնվի ծառայության պատասխանով: Հարկ է նշել, որ սիմուլյացիայի մոդելը զրոյացնում է զրոյացումը՝ դադարեցնելով սիմուլյացիան, այլ ոչ թե զրոյացնելով դիզայնը:
Նշում. Համակարգի տարբեր ծառայությունների համար օգտագործվող հրամանների կոդերի ամբողջական ցանկի համար տե՛ս Աղյուսակ 1 (Համակարգային ծառայությունների հրաման/պատասխանի արժեքներ) CoreSysServices v3.1 ձեռնարկ:. կամ UG0450: SmartFusion2 SoC և IGLOO2 FPGA System Controller Օգտագործողի ուղեցույց
2.8 SmartFusion2 Zeroization Service Simulation
Այս ուղեցույցում BFM հրամանները (տարբերակ 2) օգտագործվում են համակարգի վերահսկիչ մուտք գործելու համար համակարգի սպասարկման համար:
BFM հրամաններն օգտագործվում են, քանի որ Cortex-M3 պրոցեսորը հասանելի է սարքում BFM մոդելավորման համար: BFM հրամանները թույլ են տալիս ուղղակիորեն գրել և կարդալ COMM BLK-ից, երբ իմանաք COMM_BLK-ի հիշողության քարտեզագրումը: Ձեր դիզայնը SmartFusion2 զրոյացման ծառայության մոդելավորմանը պատրաստելու համար կատարեք հետևյալ քայլերը.
- Քաշեք և թողեք MSS-ը կատալոգից ձեր նախագծի դիզայնի կտավ:
- Անջատեք բոլոր MSS ծայրամասային սարքերը, բացառությամբ MSS_CCC-ի, Վերակայման վերահսկիչի, ընդհատումների կառավարման և FIC_0, FIC_1 և FIC_2:
- Կազմաձևեք ընդհատումների կառավարումը, որպեսզի օգտագործի MSS՝ գործվածքների ընդհատման համար:
- Պատրաստեք zeroizaton.bfm-ը file տեքստային խմբագրիչում կամ Libero-ի HDL խմբագրիչում: Ձեր զրոյացումը. bfm-ը պետք է ներառի.
- Հիշողության քարտեզագրում COMM BLK (CMBLK)
- Հիշողության քարտեզագրում՝ կառավարման ծայրամասային սարքն ընդհատելու համար (FIIC)
- զրոյականացման ծառայության հարցումի հրաման («F0» Hex զրոյացման համար)
Նախկինample serialnum.bfm file ցույց է տրված հետևյալ նկարում.
Նկար 13 • Zeroization.bfm SmartFusion2 Zeroization System Services Simulation-ի համար
5. Պահպանեք zeroization.bfm-ը file նախագծի Simulation թղթապանակում: user.bfm
6. Խմբագրեք (գտնվում է zeroization.bfm Simulation պանակում)՝ օգտագործելով հետևյալ կոդի հատվածը:
ներառել «zeroization.bfm» #include zeroization.bfm file պրոցեդուրա user_main;
տպել «INFO:Simulation Starts»;
տպել «INFO:Service Command Code in decimal:%0d», CMD ;
զանգի զրոյացում; #զանգերի զրոյացման կարգի վերադարձ
7. Դիզայնի հիերարխիայում ստեղծեք Testbench (Աջ սեղմեք վերին մակարդակ > Ստեղծեք Testbench > HDL) և դուք պատրաստ եք գործարկել SmartFusion2 զրոյացման մոդելավորումը:
Ծառայությունը սկսելուց հետո ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս, որ սարքը զրոյացվել է x պահին: Հարկ է նշել, որ սիմուլյացիայի մոդելը զրոյացնում է զրոյացումը՝ դադարեցնելով սիմուլյացիան, այլ ոչ թե զրոյացնելով դիզայնը: Հետևյալ նկարում ներկայացված ModelSim տառադարձման պատուհանը ցույց է տալիս, որ սարքը զրոյացվել է:
Նկար 14 • SmartFusion2 Zeroization System Service Simulation Log
Հավելված. Համակարգային ծառայությունների տեսակները
Այս գլուխը նկարագրում է համակարգի ծառայությունների տարբեր տեսակներ:
3.1 Մոդելավորման հաղորդագրությունների ծառայություններ
Հետևյալ բաժինները նկարագրում են սիմուլյացիոն հաղորդագրության ծառայությունների տարբեր տեսակներ:
3.1.1 Flash*Freeze
Սիմուլյացիան կմտնի Flash*Freeze վիճակ, երբ պատշաճ սպասարկման հարցումն ուղարկվի COMM_BLK կամ FIC-ից (IGLOO2 սարքերի դեպքում) կամ Cortex-M3-ից (SmartFusion2 սարքերում): Հենց որ ծառայությունը հայտնաբերվի համակարգի վերահսկիչի կողմից, մոդելավորումը կդադարեցվի և կցուցադրվի հաղորդագրություն, որը ցույց է տալիս, որ համակարգը մտել է Flash*Freeze (ընտրված տարբերակի հետ միասին): Մոդելավորումը վերսկսելուց հետո COMM_BLK-ի RXFIFO-ն կլցվի ծառայության պատասխանով, որը բաղկացած է ծառայության հրամանից և կարգավիճակից: Հարկ է նշել, որ Flash*Freeze ելքի սիմուլյացիոն աջակցություն չկա:
3.1.2 Զրոյացում
Zeroization-ը ներկայումս միակ բարձր առաջնահերթ ծառայությունն է համակարգային ծառայությունների շրջանակներում, որոնք մշակվում են COMM_BLK-ի կողմից: Սիմուլյացիան կմտնի զրոյացման վիճակ, հենց որ COMM_BLK-ի կողմից հայտնաբերվի ծառայության ճիշտ հարցումը: Այլ ծառայությունների կատարումը կդադարեցվի և կհեռացվի համակարգի վերահսկիչի կողմից, և փոխարենը կգործարկվի զրոյացման ծառայությունը: Երբ հայտնաբերվում է զրոյացման ծառայության հարցումը, մոդելավորումը դադարում է և ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս, որ համակարգը մտել է զրոյացում: Զրոյացումից հետո սիմուլյացիայի ձեռքով վերագործարկումներն անվավեր են:
3.2 Տվյալների ցուցիչի ծառայություններ
Հետևյալ բաժինները նկարագրում են տվյալների ցուցիչի ծառայությունների տարբեր տեսակներ:
3.2.1 Սերիական համարը
Սերիական համարի ծառայությունը 128-բիթանոց սերիական համար կգրի հասցեի գտնվելու վայրում, որը տրամադրվել է ծառայության հարցում: Այս 128-բիթանոց պարամետրը կարող է սահմանվել՝ օգտագործելով System Service Simulation Support-ը file (տես էջ 22): Եթե 128-բիթանոց սերիական համարի պարամետրը սահմանված չէ file, կօգտագործվի 0-ի լռելյայն սերիական համարը: Ծառայությունը սկսելուց հետո ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս նպատակակետի գտնվելու վայրը և սերիական համարը: Համակարգի վերահսկիչը կատարում է AHB գրություն սերիական համարով հասցեին: Ծառայության ավարտից հետո COMM_BLK-ի RXFIFO-ն կբեռնվի ծառայության պատասխանով:
3.2.2 Օգտագործողի կոդը
Օգտվողի կոդի ծառայությունը գրում է 32-բիթանոց օգտատիրոջ կոդ պարամետր հասցեի գտնվելու վայրում, որը տրամադրվում է ծառայության հարցում: Այս 32-բիթանոց պարամետրը կարող է սահմանվել՝ օգտագործելով System Service Simulation Support-ը file (տես էջ 22): Եթե 32-բիթանոց պարամետրը սահմանված չէ ներսում file, օգտագործվում է 0 լռելյայն արժեք: Ծառայությունը սկսելուց հետո ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս թիրախային գտնվելու վայրը և օգտագործողի կոդը: Համակարգի վերահսկիչն իրականացնում է AHB գրություն 32-բիթանոց պարամետրով հասցեին: Ծառայության ավարտից հետո COMM_BLK-ի RXFIFO-ն բեռնվում է ծառայության պատասխանով, որը ներառում է ծառայության հրամանը և թիրախային հասցեն:
3.3 Տվյալների նկարագրիչ ծառայություններ
Հետևյալ բաժինները նկարագրում են տվյալների նկարագրող ծառայությունների տարբեր տեսակներ:
3.3.1 ԱԵՍ
Այս ծառայության սիմուլյացիոն աջակցությունը վերաբերում է միայն սկզբնական տվյալների աղբյուրից դեպի նպատակակետ տեղափոխելուն, առանց տվյալների վրա որևէ գաղտնագրման/գաղտնագրման: Տվյալները, որոնք պետք է ծածկագրվեն/գաղտնազերծվեն, և տվյալների կառուցվածքը պետք է գրվեն մինչև ծառայության հարցումն ուղարկելը: Ծառայությունը սկսելուց հետո ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս AES ծառայության կատարումը: AES ծառայությունը կարդում է և՛ տվյալների կառուցվածքը, և՛ գաղտնագրման/վերծանման ենթակա տվյալները: Բնօրինակ տվյալները պատճենվում և գրվում են տվյալների կառուցվածքում նշված հասցեով: Ծառայության ավարտից հետո հրամանը, կարգավիճակը և տվյալների կառուցվածքի հասցեն դրվում են RXFIFO:
Նշում. Այս ծառայությունը նախատեսված է միայն 128-բիթանոց և 256-բիթանոց տվյալների համար, և 128-բիթանոց և 256-բիթանոց տվյալներն ունեն տվյալների կառուցվածքի տարբեր երկարություններ:
3.3.2 SHA 256
Այս ծառայության սիմուլյացիոն աջակցությունը վերաբերում է միայն տվյալների տեղափոխմանը, առանց իրականում տվյալների հեշինգի: SHA 256 ֆունկցիան նախատեսված է մուտքային տվյալների հիման վրա 256-բիթանոց հեշ ստեղն ստեղծելու համար: Տվյալները, որոնք պետք է հաշվեն և տվյալների կառուցվածքը, պետք է գրվեն իրենց համապատասխան հասցեներում, նախքան ծառայության հարցումը COMM_BLK ուղարկելը: SHA 256 տվյալների կառուցվածքում սահմանված երկարությունը բիթերով և ցուցիչով պետք է ճիշտ համապատասխանի հեշացման ենթակա տվյալների երկարությանը և հասցեին: Ծառայությունը սկսելուց հետո կցուցադրվի հաղորդագրություն SHA 256 ծառայության կատարման մասին: Փաստացի գործառույթն իրականացնելու փոխարեն, տվյալների կառուցվածքից նպատակակետ ցուցիչին կգրվի կանխադրված հեշ ստեղնը: Լռելյայն հեշ բանալին վեցանկյուն «ABCD1234» է: Հատուկ բանալի սահմանելու համար անցեք Պարամետրերի կարգավորում (տես էջ 23) բաժինը: Ծառայության ավարտից հետո RXFIFO-ն բեռնվում է ծառայության պատասխանով, որը բաղկացած է ծառայության հրամանից, կարգավիճակից և SHA 256 տվյալների կառուցվածքի ցուցիչից:
3.3.3 HMAC
Այս ծառայության սիմուլյացիոն աջակցությունը վերաբերում է միայն տվյալների տեղափոխմանը, առանց իրականում տվյալների հաշման: Տվյալները, որոնք պետք է հաշվեն և տվյալների կառուցվածքը, պետք է գրվեն իրենց համապատասխան հասցեներում, նախքան ծառայության հարցումը COMM_BLK ուղարկելը: HMAC ծառայությունը պահանջում է 32 բայթանոց բանալի, բացի բայթ երկարությունից, աղբյուրի ցուցիչից և նպատակակետի ցուցիչից: Ծառայությունը սկսելուց հետո ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս HMAC ծառայության կատարումը: Բանալին կարդացվում է, և 256-բիթանոց բանալին պատճենվում է տվյալների կառուցվածքից դեպի նպատակակետ ցուցիչ: Ծառայության ավարտից հետո RXFIFO-ն բեռնվում է ծառայության պատասխանով, որը բաղկացած է ծառայության հրամանից, կարգավիճակից և HMAC տվյալների կառուցվածքի ցուցիչից:
3.3.4 DRBG Ստեղծել
Պատահական բիթերի ստեղծումն իրականացվում է այս ծառայության կողմից: Պետք է նշել, որ սիմուլյացիոն մոդելը չի հետևում նույն պատահական թվերի ստեղծման մեթոդաբանությանը, որն օգտագործվում է սիլիցիումի կողմից: Տվյալների կառուցվածքը պետք է ճիշտ գրված լինի իր նախատեսված վայրում, նախքան ծառայության հարցումն ուղարկելը COMM_BLK: Տվյալների կառուցվածքը, նպատակակետի ցուցիչը, երկարությունը և այլ համապատասխան տվյալներ կարդացվում են համակարգի վերահսկիչի կողմից: DRBG-ի գեներացման ծառայությունը ստեղծում է պահանջվող երկարության (0-128) տվյալների կեղծ պատահական հավաքածու: Համակարգի վերահսկիչը պատահական տվյալները գրում է նպատակակետի ցուցիչում: Մոդելավորման մեջ ցուցադրվում է հաղորդագրություն, որը ցույց է տալիս DRBG-ի գեներացման ծառայության կատարումը: Ծառայության ավարտից հետո հրամանը, կարգավիճակը և տվյալների կառուցվածքի հասցեն դրվում են RXFIFO: Եթե պահանջվող տվյալների երկարությունը 0-128 միջակայքում չէ, «4» (Max Generate ) սխալի կոդը կմղվի RXFIFO: Եթե լրացուցիչ տվյալների երկարությունը 0-128-ի չափից մեծ պահանջի միջակայքում չէ, ապա «5» սխալի կոդը (Հավելյալ տվյալների գերազանցված առավելագույն երկարությունը) կմղվի RXFIFO-ի մեջ: Եթե և՛ գեներացման համար պահանջվող տվյալների երկարությունը, և՛ լրացուցիչ տվյալների երկարությունը չեն գտնվում իրենց սահմանված տիրույթում (0-128), «1» (Աղետալի սխալ) սխալի ծածկագիրը դրվում է RXFIFO:
3.3.5 DRBG վերականգնում
Փաստացի վերակայման գործառույթն իրականացվում է DRBG-ի օրինակները հեռացնելու և DRBG-ի վերակայման միջոցով: Ծառայության հարցումը հայտնաբերելուց հետո սիմուլյացիան ցուցադրում է DRBG Reset ծառայության ավարտված հաղորդագրություն: Պատասխանը, որը ներառում է ծառայությունը և կարգավիճակը, դրվում է RXFIFO:
3.3.6 DRBG ինքնափորձարկում
DRBG ինքնափորձարկման մոդելավորման աջակցությունը իրականում չի իրականացնում ինքնաստուգման գործառույթը: Ծառայության հարցումը հայտնաբերելուց հետո սիմուլյացիան կցուցադրի DRBG ինքնաստուգման ծառայության կատարման հաղորդագրություն: Պատասխանը, որը ներառում է ծառայությունը և կարգավիճակը, կմղվի RXFIFO:
3.3.7 DRBG Instantiate
DRBG ակնթարթային ծառայության մոդելավորման աջակցությունը իրականում չի կատարում ակնթարթային ծառայություն: Տվյալների կառուցվածքը պետք է ճիշտ գրված լինի իր նախատեսված վայրում, նախքան ծառայության հարցումն ուղարկելը COMM_BLK: Ծառայության հարցումը հայտնաբերելուց հետո, MSS հասցեների տարածության մեջ սահմանված կառուցվածքը և անհատականացման տողը կկարդան: Սիմուլյացիան կցուցադրի հաղորդագրություն, որը ցույց է տալիս, որ DRBG Instantiate ծառայությունը սկսվել է: Ծառայության ավարտից հետո պատասխանը, որը ներառում է ծառայության հրամանը, կարգավիճակը և տվյալների կառուցվածքի ցուցիչը, կմղվի RXFIFO: Եթե տվյալների երկարությունը (PERSONALIZATIONLENGTH) չի գտնվում 0-128 միջակայքում, ապա «1» (Աղետալի սխալ) սխալի կոդը կմղվի RXFIFO կարգավիճակի համար:
3.3.8 DRBG Չբացահայտված
DRBG-ի ոչ ակնթարթային ծառայության սիմուլյացիոն աջակցությունը իրականում չի կատարում նախկինում ցուցված DRBG-ի հեռացման ոչ բացահայտված ծառայությունը, ինչպես դա անում է սիլիկոնը: Ծառայության հարցումը պետք է ներառի ինչպես հրամանը, այնպես էլ DRBG բռնիչը: Ծառայության հարցումը հայտնաբերելուց հետո DRBG բռնակը կպահվի: Սիմուլյացիան կցուցադրի հաղորդագրություն, որը ցույց է տալիս, որ DRBG uninstantiate ծառայությունը սկզբնավորվել է: Ծառայությունն ավարտվելուն պես պատասխանը, որը ներառում է ծառայության հրամանը, կարգավիճակը և DRBG բռնակը, կմղվի RXFIFO:
3.3.9 DRBG Reseed
Համակարգային ծառայությունների բլոկի սիմուլյատիվ բնույթի պատճառով սիմուլյացիայի մեջ DRBG reseed ծառայությունը ավտոմատ կերպով չի իրականացվում յուրաքանչյուր 65535 DRBG գեներացնող ծառայություններից հետո: Տվյալների կառուցվածքը պետք է ճիշտ գրված լինի իր նախատեսված վայրում, նախքան ծառայության հարցումն ուղարկելը COMM_BLK: Ծառայության հարցումը հայտնաբերելուց հետո, կառուցվածքը և մուտքագրման լրացուցիչ պարամետրը MSS հասցեների տարածքում կկարդացվեն: Կցուցադրվի հաղորդագրություն, որը ցույց է տալիս, որ DRBG reseed ծառայությունը սկսել է գործարկվել: Տվյալների կառուցվածքը պետք է ճիշտ գրված լինի իր նախատեսված վայրում, նախքան ծառայության հարցումն ուղարկելը COMM_BLK: Ծառայության ավարտից հետո պատասխանը, որը ներառում է ծառայության հրամանը, կարգավիճակը և տվյալների կառուցվածքի ցուցիչը, կմղվի RXFIFO:
3.3.10 KeyTree
Փաստացի գործառույթը չի կատարվում KeyTree ծառայության մոդելավորման մեջ: KeyTree ծառայության տվյալների կառուցվածքը բաղկացած է 32 բայթանոց բանալիից, 7 բիթ optype տվյալներից (MSB-ն անտեսված է) և 16 բայթ ուղուց: Տվյալների կառուցվածքի մեջ գտնվող տվյալները պետք է գրվեն իրենց համապատասխան հասցեներով, նախքան ծառայության հարցումն ուղարկելը COMM_BLK: Ծառայությունը սկսելուց հետո կցուցադրվի հաղորդագրություն, որը ցույց է տալիս KeyTree ծառայության կատարումը: Տվյալների կառուցվածքի բովանդակությունը կկարդացվի, 32 բայթանոց բանալին կպահվի, և տվյալների կառուցվածքում գտնվող բնօրինակ բանալին կվերագրվի: AHB-ի այս գրումից հետո տվյալների կառուցվածքում բանալիի արժեքը չպետք է փոխվի, բայց գրելու համար AHB գործարքները տեղի կունենան: Ծառայության ավարտից հետո RXFIFO-ն բեռնվում է ծառայության պատասխանով, որը բաղկացած է ծառայության հրամանից, կարգավիճակից և KeyTree տվյալների կառուցվածքի ցուցիչից:
3.3.11 Մարտահրավերի արձագանք
Փաստացի գործառույթը, ինչպես սարքի նույնականացումը, չի իրականացվում մարտահրավերների արձագանքման ծառայության մոդելավորման մեջ: Այս ծառայության տվյալների կառուցվածքը պահանջում է ցուցիչ դեպի բուֆեր՝ ստանալու համար 32 բայթ արդյունք, 7 բիթ optype և 128 բիթ ուղի: Տվյալների կառուցվածքի մեջ եղած տվյալները պետք է գրվեն իրենց համապատասխան հասցեներում, նախքան ծառայության հարցումը COMM_BLK ուղարկելը: Ծառայությունը սկսելուց հետո կցուցադրվի հաղորդագրություն, որը ցույց է տալիս մարտահրավերներին արձագանքման ծառայության կատարումը: Ընդհանուր 256-բիթանոց պատասխանը կգրվի տվյալների կառուցվածքում տրամադրված ցուցիչում: Նախնական ստեղնը դրված է որպես վեցանկյուն «ABCD1234»: Հատուկ բանալի ստանալու համար ստուգեք Պարամետրի կարգավորումը (տես էջ 23): Ծառայության ավարտից հետո RXFIFO-ն բեռնված կլինի ծառայության պատասխանով, որը բաղկացած է ծառայության հրամանից, կարգավիճակից և մարտահրավերների պատասխանի տվյալների կառուցվածքի ցուցիչից:
3.4 Այլ ծառայություններ
Հետևյալ բաժինները նկարագրում են համակարգի այլ ծառայություններ:
3.4.1 Դիեստի ստուգում
Ընտրված բաղադրիչների ամփոփումները վերահաշվարկելու և համեմատելու փաստացի գործառույթը չի իրականացվում սիմուլյացիայի ժամանակ մարսողության ստուգման ծառայության համար: Ծառայության այս հարցումը բաղկացած է ծառայության հրամաններից և ծառայության տարբերակներից (5-բիթանոց LSB): Ծառայության գործարկումը սկսելուց հետո կցուցադրվի հաղորդագրություն, որը մանրամասնում է ամփոփման ստուգման ծառայության կատարումը, ինչպես նաև հարցումից ընտրված տարբերակները: Ծառայության ավարտից հետո RXFIFO-ն կբեռնվի սպասարկման պատասխանով, որը բաղկացած է ծառայության հրամանից և digest check pass/fail դրոշներից:
3.4.2 Չճանաչված հրամանի պատասխան
Երբ չճանաչված ծառայության հարցումն ուղարկվում է COMM_BLK-ին, COMM_BLK-ն ավտոմատ կերպով կպատասխանի չճանաչված հրամանի հաղորդագրությամբ, որը դրվում է RXFIFO-ի մեջ: Հաղորդագրությունը բաղկացած է COMM_BLK-ին ուղարկված հրամանից և չճանաչված հրամանի կարգավիճակից (252D): Նաև կցուցադրվի ցուցադրման հաղորդագրություն, որը ցույց է տալիս, որ ծառայության չճանաչված հարցում է հայտնաբերվել: COMM_BLK-ը կվերադառնա պարապ վիճակի` սպասելով ընդունելու ծառայության հաջորդ հարցումը:
3.4.3 Չաջակցվող ծառայություններ
Չաջակցվող ծառայությունները, որոնք սահմանված են COMM_BLK-ում, սիմուլյացիայի մեջ կհայտնեն հաղորդագրություն, որը ցույց է տալիս, որ ծառայության հարցումը չի աջակցվում: COMM_BLK-ը կվերադառնա պարապ վիճակի` սպասելով ընդունելու ծառայության հաջորդ հարցումը: PINTERRUPT-ը չի սահմանվի՝ նշելով, որ ծառայությունն ավարտված է: Չաջակցվող ծառայությունների ընթացիկ ցանկը ներառում է՝ IAP, ISP, Սարքի վկայական և DESIGNVER ծառայություն:
3.5 Համակարգային ծառայությունների մոդելավորման աջակցություն File
Համակարգային ծառայությունների սիմուլյացիան աջակցելու համար տեքստ file «status.txt»-ը կարող է օգտագործվել մոդելավորման մոդելի պահանջվող վարքագծի վերաբերյալ հրահանգներ փոխանցելու մոդելավորման մոդելին: Սա file պետք է գտնվի նույն թղթապանակում, որտեղից գործարկվում է սիմուլյացիան: Այն file կարող է օգտագործվել, ի թիվս այլ բաների, որոշ սխալների պատասխաններ ստիպելու համար աջակցվող համակարգի ծառայությունների համար կամ նույնիսկ սիմուլյացիայի համար անհրաժեշտ որոշ պարամետրեր սահմանելու համար (օրինակ.ample, հերթական համարը): «status.txt»-ում աջակցվող տողերի առավելագույն քանակը file 256 է: Հրահանգները, որոնք հայտնվում են 256 տողից հետո, չեն օգտագործվի մոդելավորման մեջ:
3.5.1 Սխալների պարտադրման պատասխանները
Օգտագործողը կարող է որոշակի սխալի պատասխան պարտադրել թեստավորման ընթացքում որոշակի ծառայության համար՝ փոխանցելով տեղեկատվությունը սիմուլյացիոն մոդելին՝ օգտագործելով «status.txt»: file, որը պետք է տեղադրվի այն թղթապանակում, որտեղից աշխատում է մոդելավորումը: Սխալների պատասխանները որոշակի ծառայության պարտադրելու համար հրամանը և պահանջվող պատասխանը պետք է մուտքագրվեն նույն տողում հետևյալ ձևաչափով.ample, to Command> ; հրահանգել սիմուլյացիոն մոդելին սերիական համարների ծառայությանը MSS հիշողության մուտքի սխալի պատասխան առաջացնել, հրամանը հետևյալն է.
Ծառայություն՝ Սերիական համար՝ 01
Սխալի հաղորդագրություն է պահանջվել՝ MSS Հիշողության Մուտքի Սխալ՝ 7F
«status.txt»-ում պետք է մուտքագրվի 017F տողը file.
3.5.2 Պարամետրի կարգավորում
«status.txt» file կարող է օգտագործվել նաև մոդելավորման համար անհրաժեշտ որոշ պարամետրեր սահմանելու համար: Որպես նախկինample, օգտվողի կոդի համար 32-բիթանոց պարամետրը սահմանելու համար տողի ձևաչափը պետք է լինի հետևյալ հաջորդականությամբ. <32 բիթ USERCODE>; որտեղ երկու արժեքներն էլ մուտքագրվում են տասնվեցական: Սերիական համարի 128-բիթանոց պարամետրը սահմանելու համար տողի ձևաչափը պետք է լինի հետևյալ հաջորդականությամբ. <128 Բիթ Սերիական Համար [127:0]> ; որտեղ երկու արժեքներն էլ մուտքագրվում են տասնվեցական: SHA 256 ստեղնի համար 256-բիթանոց պարամետրը սահմանելու համար; տողի ձևաչափը պետք է լինի հետևյալ հաջորդականությամբ. <256 բիթ բանալի [255:0]>; որտեղ երկու արժեքներն էլ մուտքագրվում են տասնվեցական: Մարտահրավերի պատասխանի բանալու համար 256 բիթ պարամետրը սահմանելու համար տողի ձևաչափը պետք է լինի հետևյալ հաջորդականությամբ. <256 բիթ բանալի [255:0]>;
որտեղ երկու արժեքներն էլ մուտքագրվում են տասնվեցական:
3.5.3 Սարքի առաջնահերթություն
Համակարգային ծառայությունները և COMM_BLK-ն օգտագործում են բարձր առաջնահերթ համակարգ: Ներկայումս միակ բարձր առաջնահերթ ծառայությունը զրոյացումն է։ Բարձր առաջնահերթ ծառայություն իրականացնելու համար, մինչ իրականացվում է մեկ այլ ծառայություն, ընթացիկ ծառայությունը դադարեցվում է, և դրա փոխարեն կիրականացվի ավելի առաջնահերթ ծառայությունը։ COMM_BLK-ն կհրաժարվի ընթացիկ ծառայությունից՝ ավելի բարձր առաջնահերթ ծառայությունն իրականացնելու համար: Եթե մի քանի ոչ բարձր առաջնահերթ ծառայություններ ուղարկվեն մինչև ընթացիկ ծառայության ավարտը, այդ ծառայությունները կհերթագրվեն TXFIFO-ում: Ընթացիկ ծառայության ավարտից հետո TXFIFO-ում հաջորդ ծառայությունը կկատարվի:
Microsemi-ն որևէ երաշխիք, ներկայացուցչություն կամ երաշխիք չի տալիս այստեղ պարունակվող տեղեկատվության կամ որևէ կոնկրետ նպատակի համար իր արտադրանքի և ծառայությունների համապատասխանության վերաբերյալ, ինչպես նաև չի ստանձնում որևէ պատասխանատվություն, որը բխում է որևէ արտադրանքի կամ շղթայի կիրառումից կամ օգտագործումից: Սույնով վաճառվող ապրանքները և Microsemi-ի կողմից վաճառվող ցանկացած այլ ապրանքներ ենթարկվել են սահմանափակ փորձարկման և չպետք է օգտագործվեն առաքելության համար կարևոր սարքավորումների կամ հավելվածների հետ համատեղ: Ենթադրվում է, որ կատարողականի ցանկացած տեխնիկական բնութագրերը հուսալի են, բայց չեն ստուգվում, և Գնորդը պետք է կատարի և կատարի արտադրանքի բոլոր կատարողականության և այլ փորձարկումները՝ միայնակ և ցանկացած վերջնական արտադրանքի հետ միասին կամ տեղադրված: Գնորդը չպետք է հենվի Microsemi-ի կողմից տրամադրված որևէ տվյալների և կատարողականի բնութագրերի կամ պարամետրերի վրա: Գնորդի պարտականությունն է ինքնուրույն որոշել ցանկացած ապրանքի համապատասխանությունը և նույնը ստուգել և հաստատել: Microsemi-ի կողմից սույն ստորև բերված տեղեկատվությունը տրամադրվում է «ինչպես կա, որտեղ կա» և բոլոր անսարքություններով, և նման տեղեկատվության հետ կապված ողջ ռիսկն ամբողջությամբ պատկանում է Գնորդին: Microsemi-ն բացահայտորեն կամ անուղղակիորեն որևէ կողմի չի տրամադրում արտոնագրային իրավունքներ, լիցենզիաներ կամ որևէ այլ ՄՍ իրավունք՝ անկախ այդ տեղեկատվության կամ նման տեղեկատվության մեջ նկարագրված որևէ այլ բանի հետ: Սույն փաստաթղթում ներկայացված տեղեկատվությունը պատկանում է Microsemi-ին, և Microsemi-ն իրեն իրավունք է վերապահում ցանկացած պահի առանց ծանուցման ցանկացած փոփոխություն կատարել այս փաստաթղթի տեղեկատվության կամ որևէ ապրանքի և ծառայության մեջ:
Microsemi-ը՝ Microchip Technology Inc.-ի (Nasdaq: MCHP) ամբողջությամբ պատկանող դուստր ձեռնարկությունը, առաջարկում է կիսահաղորդչային և համակարգային լուծումների համապարփակ պորտֆոլիո օդատիեզերական և պաշտպանության, կապի, տվյալների կենտրոնի և արդյունաբերական շուկաների համար: Արտադրանքները ներառում են բարձր արդյունավետություն և ճառագայթման միջոցով կարծրացած անալոգային խառը ազդանշանային ինտեգրալ սխեմաներ, FPGA-ներ, SoC-ներ և ASIC-ներ; էներգիայի կառավարման արտադրանք; ժամանակի և համաժամացման սարքեր և ժամանակի ճշգրիտ լուծումներ՝ սահմանելով ժամանակի համաշխարհային ստանդարտը. ձայնի մշակման սարքեր; ՌԴ լուծումներ; դիսկրետ բաղադրիչներ; ձեռնարկությունների պահեստավորման և հաղորդակցման լուծումներ; անվտանգության տեխնոլոգիաներ և մասշտաբային հակատտamper ապրանքներ; Ethernet լուծումներ; Power-over-Ethernet IC-ներ և միջնաժամկետներ; ինչպես նաև անհատական դիզայնի հնարավորություններ և ծառայություններ: Microsemi-ի գլխամասային գրասենյակը գտնվում է Կալիֆորնիայի Ալիսո Վիեխո քաղաքում և ունի մոտավորապես 4,800 աշխատակից ամբողջ աշխարհում: Իմացեք ավելին այստեղ www.microsemi.com.
Microsemi-ի շտաբ
One Enterprise, Aliso Viejo,
CA 92656 ԱՄՆ
ԱՄՆ-ի սահմաններում՝ +1 800-713-4113
ԱՄՆ-ից դուրս՝ +1 949-380-6100
Վաճառք՝ +1 949-380-6136
Ֆաքս՝ +1 949-215-4996
փոստ՝ վաճառք:support@microsemi.com
www.microsemi.com
© 2018 Microsemi. Բոլոր իրավունքները պաշտպանված են։ Microsemi և Microsemi լոգոն
Microsemi Corporation-ի ապրանքանիշերն են: Բոլոր այլ ապրանքանիշերը և ծառայությունները
նշանները իրենց համապատասխան սեփականատերերի սեփականությունն են:
Փաստաթղթեր / ռեսուրսներ
![]() |
Microsemi UG0837 IGLOO2 և SmartFusion2 FPGA System Services Simulation [pdf] Օգտագործողի ուղեցույց UG0837, UG0837 IGLOO2 և SmartFusion2 FPGA System Services Simulation, IGLOO2 and SmartFusion2 FPGA System Services Simulation, SmartFusion2 FPGA System Services Simulation, FPGA System Services Simulation, Services Simulation |