загальний VHDL функцій для визначення довжини вектора

S

shaiko

Guest
Здравствуйте, я хотів би написати синтезованого загальні функції , що recieves ціле число і повертає довжину вектора. тобто: Якщо на вході у функцію ціле число 6, яке є двійковим "110" функція повертає 3. Якщо на вхід функції цілого 124, який двійковий "1111100" функція повертає 7. Будь-які пропозиції?
 
Моє перше запитання - що таке контексті цього. Чи збираєтеся ви використовувати це в логічній код, або ви просто використовувати його для налаштування довжини векторів? Якщо його колишня, навіщо вам це потрібно довжину ціле (тому що вам доведеться встановити довжину вектора уже, і не може змінити його на льоту). Для останніх, потрібно просто log2 функції: [код] функція log2 (X: природний) повернення природних є - має бути природним, не може мати log2 від Нег номер змінної температури: природні: = 1; - довжина завжди має принаймні 1 змінна x_temp: натуральні: = х, у той час як почати x_temp> 1 цикл температура: температура = + 1; x_temp: = x_temp / 2; кінець циклу; обратки, кінець функції; [/ код] [COLOR = " Silver "] [SIZE = 1] ---------- Повідомлення додано в 11:17 ---------- Попереднє повідомлення було в 11:16 --------- - [/SIZE] [/COLOR] для довжини чисел зі знаком, можна використовувати ту ж функцію і додати 1 (для знакового біта)
 
Я використовую його для налаштування довжини попередньо синтезованих векторів. Ви мали на увазі "якщо" (замість "а")?
 
то його не синтезується функції, тому що налаштування можна зробити з будь-яким кодом (в тому числі не синтезується речі як речові типи). Ні, я не хочу сказати, якщо. У той час як петля тримається ділення числа на 2, поки його запустити з 1с. на кожному циклі повертається довжина збільшується на 1. (Ви не повинні використовувати цю функцію всередині процесу, крім як створити змінну довжину).
 
Приносимо вибачення за непорозуміння. Коли я сказав, що "попередньо синтезованих векторів" Я мав на увазі, що дана функція буде використовуватися на вектори у визначенні стану. Ви можете написати: "для x_temp> 1" замість ", а x_temp> 1"?
 

Welcome to EDABoard.com

Sponsor

Back
Top