Sayısal std - Numeric std

numeric_std için tanımlanan bir kütüphane paketidir VHDL. Vektörler için aritmetik fonksiyonlar sağlar. Std_mantık_vektörünün geçersiz kılmaları, işaretli ve işaretsiz aritmetik için tanımlanmıştır. Sentez araçlarıyla kullanılmak üzere sayısal türleri ve aritmetik işlevleri tanımlar. İki sayısal tür tanımlanmıştır: UNSIGNED (vektör formundaki UNSIGNED sayıyı temsil eder) ve SIGNED (vektör biçiminde bir İMZALANMIŞ sayıyı temsil eder). Temel öğe türü STD_LOGIC türüdür. En soldaki bit, en önemli bit olarak kabul edilir. İmzalı vektörler, ikinin tamamlayıcı formunda temsil edilir. Bu paket, SIGNED ve UNSIGNED türlerinde aşırı yüklenmiş aritmetik operatörler içerir. Paket ayrıca yararlı tür dönüştürme işlevleri içerir.

Tipik olarak bir tasarım biriminin üstünde bulunur:

  kütüphane ieee;  kullanım ieee.std_logic_1164.herşey;	- standart çözülmemiş mantık UX01ZWLH-  kullanım ieee.numeric_std.herşey;       - işaretli, işaretsiz tipler ve aritmetik işlemler için

Alternatif sayısal paket ieee.std_logic_arith yeni tasarımlar için kullanılmamalıdır.[kaynak belirtilmeli ] Bu paket, imzalı ve imzasız işlevlerin karıştırılması için geçersiz kılmalar sağlamaz. Bu paket, aşağıdakiler için tanımları içerir (bunların tümü sentezlenebilir değildir):[1]

operatörleri değiştir

  • abs
  • -

aritmetik operatörler

  • +
  • -
  • *
  • /
  • rem
  • mod

Not: /, rem veya mod'un ikinci bağımsız değişkeni sıfırdan farklı olmalıdır.

karşılaştırma operatörleri

  • >
  • <
  • <=
  • >=
  • =
  • /=

kaydırma ve döndürme işlevleri

  • SOLA KAY
  • SHIFT_RIGHT
  • SOLA DÖN
  • ROTATE_RIGHT
  • sll
  • srl
  • rol
  • söylenti

yeniden boyutlandırma işlevi

  • YENİDEN BOYUT (v, n)

Not: işaretli bir vektörün boyutunu artırırken, en soldaki bitler işaret biti ile doldurulurken, kesme işaret bitini (n-1) en sağdaki bitlerle birlikte tutar. İşaretsiz bir vektör için, bir boyut artışı en soldaki bitleri sıfırla doldururken, kesme en sağdaki biti tutar.

dönüştürme işlevleri

  • TO_INTEGER
  • TO_UNSIGNED
  • TO_SIGNED

Not: Son iki işlevin her biri, ortaya çıkan vektörün uzunluğunu belirten ikinci bir bağımsız değişken gerektirir.

mantıksal operatörler

  • değil
  • ve
  • veya
  • nand
  • ne de
  • Xor
  • xnor

eşleşme işlevi

  • STD_MATCH

Not: bağımsız değişken vektörlerini öğeye göre karşılaştırır, ancak '-' değerine sahip herhangi bir biti diğer herhangi bir STD_ULOGIC değeriyle eşleşiyormuş gibi ele alır. Herhangi bir bağımsız değişken biti 'U', 'X', 'W' veya 'Z' ise yanlış döndürür.

özel çeviri işlevi

  • TO_01

Not: 'H', '1' ve 'L', '0' olarak çevrilir; bu işlev, std_logic değerlerinden herhangi biri olabilen, ancak varsayılan olarak '0' olan isteğe bağlı ikinci bir XMAP bağımsız değişkeni alır. Giriş bağımsız değişkenindeki 01LH dışında herhangi bir değer, tüm bitlerin bir uyarı ile birlikte XMAP olarak ayarlanmasına neden olur.

Referanslar

  1. ^ 1076.3 IEEE Standart VHDL Sentez Paketleri