سلام دوستان
من میخام یه alu با vhdl کد بزنم.میخام این alu اعمال + و - و * و / رو انججام بده یعنی 4 عمل اصلی. قسمت + و - درست کار میکنه. دو تا عدد 4 بیتی بهش میده جمع و تفریق میکنه. پیاده سازیم هم در سطح گیت هست یعنی ساختاری یعنی dataflow. اما واسه ضرب:
می خام از این ایده جلو برم. اول عدد دوم یعنی b رو به integer تبدیل کنم که کاری نداره. میام به ترتیب بیت ها رو در ارزششون ضرب میکنم بعد با هم جمع میکنم. تا اینجا b به دست میاد. حالا میام a رو به همین تعداد با خودش جمع میکنم. با حلقه for. اگه این جواب بده واسه تقسیم هم از همین ایده میرم ولی مشکلم اینه که اینحا مجبورم یه architucture دیگه تعریف کنم چون باید رفتاری واسم کار کنه نه ساختاری. چون به اعمال ضرب واسه ساختن b بهصورت integer نیاز دارم. اما اشکال میگیره ازم..اصلا نمیتونه b رو بسازه..از عمل ضربم اشکال میگیره..اصلا نمیتونه a وb رو از بالا بخونه. آخه چرا؟
این ایدم درسته به نظرتون؟؟
لطفا ج بدین
مرسی
من میخام یه alu با vhdl کد بزنم.میخام این alu اعمال + و - و * و / رو انججام بده یعنی 4 عمل اصلی. قسمت + و - درست کار میکنه. دو تا عدد 4 بیتی بهش میده جمع و تفریق میکنه. پیاده سازیم هم در سطح گیت هست یعنی ساختاری یعنی dataflow. اما واسه ضرب:
می خام از این ایده جلو برم. اول عدد دوم یعنی b رو به integer تبدیل کنم که کاری نداره. میام به ترتیب بیت ها رو در ارزششون ضرب میکنم بعد با هم جمع میکنم. تا اینجا b به دست میاد. حالا میام a رو به همین تعداد با خودش جمع میکنم. با حلقه for. اگه این جواب بده واسه تقسیم هم از همین ایده میرم ولی مشکلم اینه که اینحا مجبورم یه architucture دیگه تعریف کنم چون باید رفتاری واسم کار کنه نه ساختاری. چون به اعمال ضرب واسه ساختن b بهصورت integer نیاز دارم. اما اشکال میگیره ازم..اصلا نمیتونه b رو بسازه..از عمل ضربم اشکال میگیره..اصلا نمیتونه a وb رو از بالا بخونه. آخه چرا؟
این ایدم درسته به نظرتون؟؟
لطفا ج بدین
مرسی
دیدگاه