1. Kamerák
  2. Autóhifi és elektronika
  3. Otthoni audió
  4. Személyes audió
  5. Televíziók
  6. Okos otthon
  >> Elektronikus Technológia >  >> Személyes audió >> Digitális hangrögzítők

Hogyan írhat Verilog kódot a módosított fülkekódolóhoz?

``` verilog

moduled_booth_encoder (

bemenet [3:0] szorzó, // 4 bites szorzó

bemeneti [3:0] szorzó, // 4 bites szorzó

output [7:0] termék // 8 bites termék

);

// Résztermékek belső regiszterei

reg [7:0] részleges_termék [0:3];

// Résztermékek inicializálása 0-ra

kezdeti kezdés

részleges_termék[0] <=0;

részleges_termék[1] <=0;

részleges_termék[2] <=0;

részleges_termék[3] <=0;

vége

// Booth kódolási logika

mindig a @(*) kezdődik

// Iteráció a szorzó minden bitjén keresztül

mert (i egész szám =0; i <4; i =i + 1) kezdődik

// Booth kódolási minták ellenőrzése

eset ({szorzó[i], szorzó[i-1]})

2'b00:kezdődik

részleges_termék[i] <=részleges_termék[i];

vége

2'b01:kezdődik

részleges_termék[i] <=részleges_termék[i] + szorzó;

vége

2'b10:kezdődik

részleges_termék[i] <=részleges_termék[i] - szorzó;

vége

2'b11:kezdődik

részleges_termék[i] <=részleges_termék[i];

vége

alapértelmezett:kezdődik

részleges_termék[i] <=részleges_termék[i];

vége

végügy

vége

vége

// A végtermék kiszámítása

termék hozzárendelése =részleges_termék[0] + (résztermék[1] <<1) + (résztermék[2] <<2) + (résztermék[3] <<3);

végmodul

```

Magyarázat:

1. Bemenetek és kimenetek:

- "multiplicand":a szorzót képviselő 4 bites bemenet.

- "szorzó":a szorzót képviselő 4 bites bemenet.

- "termék":8 bites kimenet, amely a szorzó és a szorzó szorzatát képviseli.

2. Belső nyilvántartások:

- "részleges_termék":4 regiszterből álló tömb, amelyek mindegyike egy részterméket tárol. Ezeket a regisztereket a Booth kódolás alapján frissítjük.

3. Inicializálás:

- A kezdeti blokk az összes résztermékregisztert 0-ra állítja az elején.

4. Booth kódolási logika:

- Az "always @(*)" blokk a Booth kódolási algoritmust valósítja meg.

- Iterál a szorzó minden bitjén (MSB-től LSB-ig).

- Minden bitnél ellenőrzi az aktuális bitet és az előző bitet, hogy meghatározza a Booth kódolási mintát.

- A minta alapján elvégzi a megfelelő műveletet a részterméken:

- 00: Nem működik (a résztermék változatlan marad).

- 01: Adja hozzá a szorzót a részszorzathoz.

- 10: Vonja ki a szorzót a részszorzatból.

- 11: Nem működik (a résztermék változatlan marad).

5. Végső termék számítása:

- A "hozzárendelés" utasítás az eltolt résztermékek hozzáadásával számítja ki a végterméket.

- Minden részszorzat balra tolódik el a megfelelő bitpozícióval.

A kód működése:

A módosított Booth-kódolási algoritmus a szorzási folyamatot a szorzóban lévő mintákon alapuló összeadások és kivonások sorozatával helyettesíti. A szorzóban egymást követő bitpárok vizsgálatával hatékonyan tudjuk végrehajtani a szorzást.

Példa:

Tegyük fel, hogy "szorzószám =5" (bináris:"0101") és "szorzó =3" (bináris:"0011").

1. 1. iteráció: `szorzó[3:2] =00` – Nincs művelet.

2. 2. iteráció: `multiplier[2:1] =01` – `multiplicand` hozzáadása a `partial_product[1]`-hez.

3. 3. iteráció: `szorzó[1:0] =11` – Nincs művelet.

A ciklus után a következők lesznek:

- "részleges_termék[0] =0".

- "részleges_termék[1] =5".

- "részleges_termék[2] =0".

- "részleges_termék[3] =0".

Végül a "termék =0 + (5 <<1) + (0 <<2) + (0 <<3) =10" (bináris:"1010"), amely 5 és 3 helyes szorzata.

  1. Hogyan javíthatja a telefonon a hangok rögzítésének minőségét?
  2. Van egy hordozható hangfordító?
  3. Mi a Motorola I530 Önálló Walkie Talkie ?
  4. Milyen hardver kell a digitális hang rögzítéséhez?
  5. Működési utasítás egy RCA Digital Voice Recorder 5015A