RTL+Introduction
رشد روز افزون پیچیدگی طراحی سیستمهای دیجیتال، توسعه محیطهایی با قابلیت توصیف سیستم در سطح بالا را ضروری میسازد. چنین محیطی امکان چشمپوشی از برخی جزئیات طراحی را برای طراح فراهم ساخته و در نتیجه موجب افزایش سرعت طراحی سیستم و سادهسازی این فرآیند میگردد. در کنار سادهسازی روال طراحی، یکی از مهمترین مسائل مطرح در فراهمسازی امکان طراحی در سطح بالا، استفاده از رویکردی با قابلیت سنتز سختافزاری میباشد. چنانکه طراحان نیازمند روشهایی هستند که در کنار سادهسازی روال طراحی، به آنان این تضمین را بدهد که در صورت پیروی از تعدادی اصول و قواعد در زمان طراحی سطح بالا، طرح نهایی بطور کامل قابلیت سنتز سختافزاری را دارا میباشد.
تحقق امکان سنتز کامل یک توصیف به صورت پایین به بالا میسر میشود. بدین معنی که جهت سنتز توصیف یک سیستم در یک سطح، لازم است امکان سنتز این سطح و تمام سطوح زیرین مهیا باشد. به همین دلیل در توصیف سطوح انتزاعی بالاتر لازم است از یک سو ارتباط این سطح انتزاعی با سطح پایینی آن به صورت واضحی قابل مشاهده بوده که این امر معرف قابلیت سنتز این سطح میباشد و از سوی دیگر لازم است این سطح بگونهای انتخاب شود که مسیر روشنی به سوی سطح بعدی و در راستای نزدیک شدن به توصیف سطح سیستم را داشته باشد. بطور مثال با وجود اینکه رویکرد معرفی شده در SystemC TLM۲.۰ سادهسازی روال طراحی را تا حد بالایی برآورده ساخته است، این رویکرد در راستای قابلیت سنتز و تناظر مستقیم سختافزاری، با مشکلات و ابهامات فراوانی روبروست که یکی از مهمترین دلایل این امر را میتوان در فاصله زیاد آن با توصیف استاندارد سطح RTL دانست.
رویکرد پیشنهادی +RTL با هدف استخراج قوانین و اصول لازم جهت دستیابی به روش مناسب طراحی در سطح سیستم ارائه شده است و بر پایهی سنتز ارتباطات سطح بالا به باسهای استاندارد و سختافزارهای واسطه (در صورت لزوم) میباشد. سطح طراحی +RTL از نظر انتزاعی، سطحی بالاتر از RTL میباشد. در این سطح از یک سو با استفاده از زبان سطح بالای SystemC و قابلیتهای آن از جمله کانالها و واسط ها، امکان توصیف آسان و اجمالی سیستم و ارتباطات آن برای طراح فراهم شده است و از سوی دیگر طراحی واسطها بگونهای صورت گرفته است که ارتباط مستقیم آن با سخت افزار متناظر ملموس می باشد. بطور مثال، هر یک از توابع مورد استفاده در واسطهای سطح بالا (گامهای ارتباطی)، توسط یک حالت در ماشین حالت مربوط به کد سطح پایین توصیف میگردد. در این پروژه در مرحله فعلی، تمرکز قابلیتهای پیشنهادی جهت طراحی در محیط +RTL بر پشتیبانی از سیستمهای مبتنی بر باسهای استاندارد میباشد، ولیکن هدف طرح پیشنهادی به پشتیبانی از این نوع سیستمها محدود نمیگردد. نسخه فعلی +RTL بر مبنای پروتکل AHB در باس استاندارد AMBA (نسخه دو) میباشد.
با استفاده از بسته +RTL کافیست طراح توصیف رفتار داخلی مولفههای طرح خود را در دو زبان توصیف سختافزاری SystemC و Verilog در اختیار داشته باشد (همانطور که پیشتر اشاره شد، تمرکز رویکرد +RTL بر سنتز ارتباطات بوده و در گام فعلی از سنتز محاسبات و واحدهای پردازشی صرف نظر شده است). در صورت فراهم بودن توصیفات سطح بالا و پایین واحدهای پردازشی سیستم، طراح میتواند با استفاده از واسطهای تعریف شده در بسته فعلی +RTL، ارتباطات داخلی سیستم خود را به سادهترین صورت ممکن توصیف نموده و با کمک شبیهسازی، پارامترهای تعیین شده در ارتباطات مولفههای سیستم حاصل را ارزیابی نماید. پس از تعیین مقادیر مناسب برای پارامترهای واسطهای ارتباطی، کافیست مقادیر این پارامترها که توصیف سطح بالا (SystemC) تعیین گردیدهاند، در توصیف سطح پایین این واسطهای ارتباطی (Verilog) تنظیم شده و سیستم متشکل از واحدهای پردازشی، واسطهای ارتباطی و باس استاندارد مورد استفاده پیادهسازی گردد. بدین ترتیب سیستم مورد نظر طراح به صورت قابل سنتز پیاده سازی می شود. در نسخه فعلی بسته +RTL، سنتز سیستم به صورت دستی صورت میپذیرد.
در راستای پیشبرد این طرح پژوهشی، موارد زیر میتوانند به عنوان گامهای بعدی در نظر گرفته شوند:
۱. گسترش بسته +RTL به منظور پشتیبانی از سایر باسهای استاندارد و پروتکلهای ارتباطی مورد استفاده در توصیف سیستمهای دیجیتال.
۲. پژوهش در راستای بالا بردن سطح انتزاعی +RTL به سوی سطح سیستم و در صورت امکان در راستای نزدیک شدن به TLM ۲.۰ به صورت پیادهسازی ارتباطات سطح TLM ۲.۰ توسط واسطهای ارتباطی +RTL.
۳. افزودن قابلیت سنتز خودکار توصیف سطح بالای ارتباطات (SystemC) به توصیف سطح پایین آنها (RTL). گام نخست خودکارسازی روال سنتز میتواند تنها شامل تنظیم خودکار پارامترهای سطح پایین متناظر با پارامترهای واسطهای ارتباطی سطح بالا باشد که در حال حاضر به صورت دستی و توسط طراح تنظیم میگردند.
۴. افزودن قابلیت سنجش و ارزیابی پارامترهای مختلف به توصیفات سطح +RTL به منظور بالا بردن سطح انتزاعی تخمین و ارزیابی این پارامترها. از جمله این پارامترها میتوان به معیارهای مصرف توان سیستم و پارامترهای مربوط به سالخوردگی بخشهای سیستم اشاره کرد.
۵. توسعه محیط گرافیکی جهت سادهسازی استفاده از +RTL برای طراحان و پیشبرد همگام هسته این بسته و محیط نرم افزار پشتیبان آن.
Contact Info:
- Behnaz Pourmohseni: b.pourmohseni@gmail.com