Դուք կարող եք օգտագործել չարգելափակող ընթացակարգային դրույթը երբ ցանկանում եք կատարել մի քանի գրանցման առաջադրանքներ միևնույն ժամանակային քայլի ընթացքում՝ առանց հաշվի առնելու կարգը կամ միմյանցից կախվածությունը: Դա նշանակում է, որ չարգելափակող հայտարարություններն ավելի շատ նման են իրական ապարատային, քան արգելափակող հանձնարարականներին:
Ինչու ենք մենք օգտագործում չարգելափակելը բլոկում:
Արգելափակման (=) և չարգելափակող (<=) հանձնարարությունները տրամադրված են՝ վերահսկելու կատարման կարգը միշտ block քաղվածքի կատարման շրջանակներում: Չարգելափակող հանձնարարությունները բառացիորեն չեն արգելափակում հաջորդ հայտարարությունների կատարումը: Բոլոր հայտարարությունների աջ կողմը նախ որոշվում է, ապա ձախ կողմերը միասին վերագրվում են:
Ե՞րբ կօգտագործեիք արգելափակող և չարգելափակող հանձնարարությունները հաջորդական տրամաբանությունը կոդավորելիս:
Ուղեցույց 1․ Գոյություն ունեն Verilog-ի միջոցով կոմբինացիոն տրամաբանությունը կոդավորելու բազմաթիվ եղանակներ, բայց երբ կոմբինացիոն տրամաբանությունը կոդավորվում է միշտ արգելափակման միջոցով, պետք է օգտագործվեն արգելափակող հանձնարարությունները:
Ի՞նչ է արգելափակող և չարգելափակող հանձնարարությունները:
բլոկներ՝ նրբորեն տարբեր վարքագծերով: • Արգելափակող հանձնարարություն. գնահատումն ու հանձնարարությունն անհապաղ են: • Չարգելափակող հանձնարարություն. բոլոր առաջադրանքները հետաձգվել են մինչև բոլոր : աջակողմյան կողմերը գնահատվել են (սիմուլյացիայի ավարտը.
Որտե՞ղ է օգտագործվում արգելափակող և չարգելափակող Verilog-ը:
Ահա Verilog-ի լավ հիմնական կանոն. Verilog-ում, եթե ցանկանում եք ստեղծել հաջորդական տրամաբանություն, օգտագործեք ժամացույցի միշտ բլոկ՝ Nonblocking հանձնարարություններով Եթե ցանկանում եք ստեղծել համակցված տրամաբանություն, օգտագործեք միշտ արգելափակում Արգելափակման հանձնարարականներով:Փորձեք չխառնել երկուսը նույն միշտ բլոկում: