استفاده از سیگنال‌ها بصورت بردار

در مدار شکل ۱۴ برای هر یک از چهار بیت ورودی‌های x، y و cin و چهار بیت خروجی s از سیگنال‌های مجزایی استفاده شده است (در مجموع ۱۵ سیگنال). یک روش راحت تر برای اینکار استفاده از سیگنال های چندبیتی بنام برداراست. برای مثال یک ورودی برداری بصورت زیر نمایش داده می‌شود:

input [3:0] W;

در این عبارت w به عنوان یک بردار ۴ بیتی تعریف شده است. برای دسترسی به هر کدام از بیت های W باید شماره بیت را در براکت قرار داد. بدین ترتیب پر ارزش ترین بیت بصورت W[3] و کم ارزش ترین بیت بصورت W[0] مشخص می‌شود و به دو بیت میانی بصورت W[2:1] اشاره می‌شود؛ همچنین برای اشاره به تمام بیت ها از W استفاده می‌شود.

توصیف جمع کننده ۴ بیتی با استفاده از بردار ها در شکل ۱۵ نشان داده شده است. علاوه بر تعریف x و y به عنوان ورودی و s به عنوان خروجی، برای ارتباط بین هر طبقه از جمع کننده از سه بیت سیگنال نقلی استفاده شده است. توجه داشته باشید که هنوز هم ورودی نقلی stage0 به عنوان carryin و خروجی نقلی در stage3 به عنوان carryout مشخص شده‌اند.

برای مشخص کردن سیگنال هایی که نه خروجی و نه ورودی هستند و فقط برای ارتباطات داخلی مدار استفاده شده‌اند، از داده هایی بصورت wire استفاده می‌شود. در ماژول adder4 به سه سیگنال نقلی برای ارتباطات داخلی نیاز است که می‌توان آن را بصورت یک بردار ۳ بیتی تعریف نمود:

wire [3:0] C;

در این مثال از سیگنال C[1] برای اتصال خروجی نقلی در stage0 به ورودی نقلی stage1 استفاده شده است.

شکل ۱۵

همانطور که اشاره شد، مشخصات اندازه بردار در یک براکت مشخص می‌شود. بدین صورت که ابتدا شماره‌ی با ارزش ترین بیت و پس از آن شماره‌ی کم ارزش ترین بیت ذکر می‌شود. همچنین از یک روش معکوس نیز می‌توان استفاده نمود. برای مثال Z[0:3] یک بردار چهار بیتی است که در آن Z[0] پر ارزش ترین بیت و Z[3] کم ارزش ترین بیت آن است.

results matching ""

    No results matching ""