Сортиране алгоритъм в VHDL

O

omara007

Guest
Здравейте хора ..

Всеки, който има идея за добър алгоритъм за сортиране на ценности в хардуера?..
Имам 28 регистри, натоварени с различни ценности и аз искам да се максималната стойност, съхранявани в тези регистри ..Какво е най-добрият алгоритъм за това?

 
Здрасти,

Мисля, че просто се използва сравнение дърво, за да получите резултата.

Код:

--(>)--|

--(>)--

--(>)--|
 
davyzhu написа:

Здрасти,Мисля, че просто се използва сравнение дърво, за да получите резултата.--(>)--|

..........--(>)--

--(>)--|А проста логика гребен, всяко друго решение?Чао,

Дейви
 
За да разберете Максимална стойност не трябва да направите за сортиране.
Нека ме Ур проблем в по-ясни думи!
Имате право 32BIT 28 регистри и трябва да се намери Максимална стойност от тях.
Има два начина да направите това!

1.Първо и съвсем очевидно е итеративен метод
трябва едно 32BIT за сравнение (А> Б) и 32 битов регистър за съхранение на
резултат.и малка statemachine ще си свършат работата.Хардуер се изискват по-малко.
Часовник цикъл са необходими 28.

2.Комбинаторен (чист), това ще са необходими 27 32BIT сравнение заедно с 26
32BIT 2:1 muxes.Часовник изисква цикъл е 1.

Използването pipelining и повторно използване на хардуера, можете да намалите хардуер в случай 2!

 
nand_gates написа:

За да разберете Максимална стойност не трябва да направите за сортиране.

Нека ме Ур проблем в по-ясни думи!

Имате право 32BIT 28 регистри и трябва да се намери Максимална стойност от тях.

Има два начина да направите това!1.
Първо и съвсем очевидно е итеративен метод

трябва едно 32BIT за сравнение (А> Б) и 32 битов регистър за съхранение на

резултат.
и малка statemachine ще си свършат работата.
Хардуер се изискват по-малко.

Часовник цикъл са необходими 28.2.
Комбинаторен (чист), това ще са необходими 27 32BIT сравнение заедно с 26

32BIT 2:1 muxes.
Часовник изисква цикъл е 1.Използването pipelining и повторно използване на хардуера, можете да намалите хардуер в случай 2!
 
Ето как можете да го направите в един цикъл!

Код:-------- -------- -------- --------

| К0 | | R1 | | | R2 | R3 |

--- ---- --- ---- --- ---- --- ----

| | | |

32BIT 32BIT

| \ Comp / | | \ Comp / |

| \ / | | \ / |

| ----- | | ----- |

| |> | | | |> | |

| -- -- | | -- -- |

| | | | | |

------|----- | -----|----- |

| --- ----------- --- | --- ----------- ---

| \ 1 MUX 0 / | \ 1 MUX 0 /

---- \ / --- \ /

------- ------- ------- -------

| |

| |

----- -----

| Сравнение |

32 малко

| \ | / |

| \ V / |

| ----- |

| |> | |

| -- -- |

| | |

-------|----- |

| --- ----------- ---

| \ 1 MUX 0 /

----- \ /

------- -------

|

|

Макс на (R0, R1, R2, R3)

 
ОК ..Това е готино ..Така че, ако аз съм тичане ми дизайн на 8 часа MHz, и аз съм се насочвате към технологията на 0,13 U ..Какво Ур очаквания за максимум не.на комбинаторни comparisions, че мога да издържите?

 

Welcome to EDABoard.com

Sponsor

Back
Top