فرق اش اینه که متغیرهای از این نوع رو میشه از پراسس های مختلف بهشون اکسز زد و مثل Variable های معمولی لوکال نیستن، اما این منجر به ریس کاندیشن میشه و برای حل این مشکل باید هر پراسس که میخواد اکسز بزنه باید متغیر رو به صورت اکسکلوسیو در بیاره برای این کار تو VHDL یه داده از نوع protected تعریف و بعد متغیر شیر شده هم از این نوع جدید protecte شده تعریف میشه.
خیلی ممنون.تقریبا متوجه شدم (که از حالت لوکال در می آد و میشه در پروسس های دیگه هم ازش استفاده کرد) ولی ساختارش و اینکه باید protect بشه رو نفهمیدم.
راستش من دنبال یک منبع خوب برای آموزش VHDL میگردم که همه ی دستوراتشو توضیح بده، ممنون می شم چند تا سورس بهم معرفی کنید :read:
در مورد منبع، کتاب های زیادی هست تو نت میتونید دانلود کنید کتابهایی که من میشناسم اینا هستن:
در مورد VHDL:
کتاب دکتر نوابی (به نظرم کتاب کاملیه ولی یخورده همچین گیج کننده است)
کتاب the designers guide to vhdl (به نظرم کتاب کاملیه و متن ساده و رونی داره) (فصل 19 این کتاب "Shared Variables and Protected Types" هست میتونید بهش مراجعه کنید، کاربردش رو هم گفته با مثال).
کتابای بالا بیشتر تمرکزشون خود زبان هست، یعنی خیلی از چیزایی که گفته شده قابل سنتز نیست و برای تست بنچ و اینا خوبه. برای کد نویسی سینتزبل من از کتاب های زیر استفاده میکنم:
FPGA Prototyping by VHDL Examples
و
RTL HARDWARE DESIGN USING VHDL
خیلی متن ساده و رونی دارن.
اگه با FPGA های Xilinx کار میکنید ویدئوهای آموزشی خود xilinx هم هست میتونید از اون ها استفاده کنید.
قسمت HDL Coding Techniques
http://www.xilinx.com/training/free-video-courses.htm
دیدگاه