ФПГА: све о овим чиповима и њиховом програмирању

ФПГА чип

Л ФПГА су постали све популарнији у последња времена. Чак се и за професионалне примене ови чипови често користе, али и за оне који раде самостално и они који желе да имплементирају дискретни круг унутар чипа са свим предностима које то подразумева. Није јефтино ни лако пронаћи фабрику која ће вам послати ваше распореде или обрасце и произвести прилагођени чип за вас.

Тачно је да неке ливнице то дозвољавају правите облатне или вишепројектне наполитанке да праве чипове од појединаца или универзитета да би их тестирали. Овакве фабрике је, како кажем, тешко пронаћи, обично су у иностранству и нису јефтине. Након неког времена, узорци ваших чипова шаљу се на договорену адресу, али они нису задужени за њихово тестирање или проверу да ли раде. Све зависи од вашег дизајна ...

А алтернативно решење за то је куповина ФПГА и програмирајте све што вам треба за имплементацију унутар чипа ...

Шта је ФПГА?

Програмабилне ћелије

ФПГА је скраћеница од Фиелд Программабле Гате Арраи. То су дигитални уређаји или чипови који се могу конфигурисати тако да омогућавају практично било шта да се примени. То јест, другим речима, то је празан чип где можете „писати“. То значи да можете имплементирати ЦПУ, меморију, контролер, било коју логику итд., Постижући врло брз рад и са свим предностима интегрисања у чип, а не са електронским елементима.

Росс Фрееман и Бернард Вондерсцхмитт, суоснивачи Ксилинка, били су ти који су измислили ФПГА 1984. То су учинили као еволуцију ЦПЛД чипова тог времена. Програмирани чипови ЦПЛД имали су неке недостатке који су решили нови ФПГА дизајн и од тада се развијају до данас.

Тржиште ФПГА толико је плодно да компаније воле Интел, Ксилинк, Алтера, Куицк Логиц, решетка итд., много су уложили у развој бољих ФПГА-а, као и уграђена програмска окружења или ИДЕ-ове за њих. На тај начин пружајући врло добре платформе које олакшавају задатак програмерима или произвођачима.

Тренутно ови произвођачи не нуде само програмабилни чип, већ и укључују бројни помоћни елементи како би програмерима донели више могућности. На пример, укључују ћелије флеш меморије, СДРАМ меморијске ћелије итд.

За шта се користе?

ИДЕ за програмирање ФПГА

Према томе, ФПГА може бити сличан АСИЦ-у, али то можемо бирати шта ће бити. На пример, могли бисмо створити код за његово програмирање и претворити га у ЦПУ, ГПУ, сабирач, меморијски контролер или било које друго логичко коло имплементирано на једном чипу.

Могућности су прилично бескрајне. У ствари, препоручујем вам да посетите веб локацију опенцорес.орг, сајт посвећен понуди мноштва пројеката hardware libre. Наћи ћете кодове у ВХДЛ, Верлиго, итд., за РАМ, ЦПУ, ГПУ, управљачки програми, АЛУ-ови, ФПУ-ови, декодери, итд..

Како је програмиран?

Програмер за ФПГА

Да бисмо програмирали ФПГА, то можемо учинити из нашег омиљеног оперативног система, као што су ГНУ / Линук, Виндовс и МацОС, иако сигурно има више развојних окружења за Виндовс. Генерално, исте компаније које производе ФПГА нуде а Веома комплетан ИДЕ за рад и где пронаћи све потребне алате у истом софтверском пакету.

Такође ће вам требати ФПГА чип или плоча и потребан кабл или програмер помоћу које можете повезати ФПГА са рачунаром како бисте написани код проследили ФПГА-у и тако је програмиран. То је нешто слично ономе што радите са Ардуино плочом, уписујући Ардуино ИДЕ програм у програмибилну меморију микроконтролера.

Само у случају ФПГА имамо матрицу или низ елементарних компоненти као што су меморијске ћелије, И капије, ИЛИ, НЕ, јапанке и друге. основни елементи или блокови дигиталне електронике које можемо користити. Са писаним програмом оно што ћемо урадити је да наметнемо начин на који ће се ови битни блокови груписати да би формирали мали круг који желимо, као што је АЛУ.

Односно, ако програмирамо сабирач у нашем ИДЕ-у, неопходни блокови за примену овог сабирача они ће повезати на исправан начин унутар ФПГА тако да чип ради као сабирач. Једноставно зар не? Генерално се користи неколико метода за ово програмирање на физичком нивоу, попут меморија или осигурача да би се у том случају створила трајна веза.

Брзина којом они раде зависиће од брзине такт фреквенција за који смо купили ФПГА. На пример, најосновнији обично раде на 50 МХз, други ће то радити на много вишим фреквенцијама. У случају ФПГА од 50 МХз, то значи да ће радити брзином од 50.000.000 XNUMX XNUMX пута у секунди. Ако наставимо са сабиратељем који сам навео као пример, моћи ћете да извршите ту суму у једној секунди ...

Настављајући са темом ПрограмирањеЈедном када сазнамо да можете писати код као што бисмо то радили у Ардуино ИДЕ-у или да развијете било који други програм, и видећи како се то ради на хардверском нивоу, рећи ћу да то заиста није програмирање као такво. То је хардверски опис. Заправо се користе језици за опис хардвера као што су ВХДЛ, Верилог итд.

са тај програм је описан на логичком нивоу шта ради мали склоп који желимо да применимо. А онда иде на ФПГА. Иако је тачно да неке платформе омогућавају програмирање на програмским језицима као што је Ц, да могу да имплементирају ЦПУ у ФПГА, а затим генеришу програме за учитавање у меморију и обраду од стране наведеног процесора.

Интеграција са Ардуином

ФПГА Ардуино

ФПГА се обично користе одвојено, али је истина да на тржишту постоји много алата и комплета који ће вам олакшати живот у интеграцији ваших ФПГА са Ардуино платформом. Пример плоче за увођење ФПГА-а у ваше пројекте са Ардуином је МКР Видор 4000, мада постоје и други.

МКР Видор 4000 то је плоча са три чипа. Један од њих је ФПГА, тачније Интел Цицлоне 10. Постоје и други чипови за Блуетоотх ЛЕ или повезивање мале потрошње, као и ВиФи компатибилност. Добар додатак за пружање Ардуину функционалности повезивања и за могућност примене онога што вам треба у ФПГА.

Уз то имате прилагодљиви хардвер, коју сте сами конфигурисали у жељену сврху. То нуди бескрајне могућности.


Будите први који ће коментарисати

Оставите свој коментар

Ваша емаил адреса неће бити објављена. Обавезна поља су означена са *

*

*

  1. За податке одговоран: Мигуел Ангел Гатон
  2. Сврха података: Контрола нежељене поште, управљање коментарима.
  3. Легитимација: Ваш пристанак
  4. Комуникација података: Подаци се неће преносити трећим лицима, осим по законској обавези.
  5. Похрана података: База података коју хостује Оццентус Нетворкс (ЕУ)
  6. Права: У било ком тренутку можете ограничити, опоравити и избрисати своје податке.