ddlab
258 subscribers
29 photos
20 files
144 links
Лабораторія цифрового дизайну.
Цифрова схемотехніка, Verilog/VHDL українською.
Download Telegram
Слава Україні!
Сьогодні у нас багато відео (86 відео в плейлисті) – це записи конференції RISC-V Summit North America 2023. Ця конференція пройшла у Каліфорнії 7-8 листопада. Тобто дуже свіжі відео.
Нагадаю, що RISC-V — це відкрита архітектура інструкцій центрального процесора, що базується на принципах RISC. RISC-V має широкий спектр потенційних застосувань. Його можна використовувати в мобільних пристроях, таких як смартфони та планшети, вбудованих системах, таких як контролери промислового обладнання, і центрах обробки даних.
RISC-V є відносно новою технологією, але вона швидко набирає популярності. У 2023 році RISC-V використовується в продуктах понад 200 компаній, і цей список постійно зростає.
Якщо вам цікава архітектура процесора та RISC-V, то раджу для початкового кроку почитати останню версію книги Харріс і Харріс «Цифрова схемотехніка та архітектура комп’ютера» 2023 року. Вона якраз є вступним курсом в архітектуру RISC-V.
Щодо конференції. Тут розклад і теми доповідей: https://events.linuxfoundation.org/riscv-summit/program/schedule/
Тут плейлист YouTube: https://www.youtube.com/playlist?list=PL85jopFZCnbMfMRR25ENcRkhhAUGwP5C5

#RISC_V
Слава Україні!
Перебираючи старі архіви наштовхнувся на випуски журналу XCell, який видавала компанія Xilinx протягом 25 років. Перший номер вийшов у 1989 році, а останній – 94 номер у 2015. Після цього журнал перестали видавати. Пояснень на припинення видання журналу нема, але скоріш за все це загальна тенденція – припинення існування журналів. Така доля спіткала не тільки XCell, але і журнал про ПЛІС компанії Altera. Але про то іншим разом.
Щодо журналу – зрозуміло, що він був на половину рекламою продукції Xilinx, але були і доволі гарні статті. Тому раджу скачати та погортати.
Ось тут, наприклад, можна подивитись останній номер: https://issuu.com/xcelljournal/docs/xcell94/7.
Скачати журнали можна ввівши в рядок пошуку таке: https://www.xilinx.com/publications/archives/xcell/Xcell94.pdf Це для номера 94. Як скачати всі інші номери спробуйте вгадати самі.

#book
Слава Україні!
Як ви знаєте дійсні числа можуть бути цілі, тобто з фіксованою комою та з плаваючою комою. Для запису чисел з плаваючою комою. Для запису чисел з плаваючою комою зараз найчастіше використовують стандарт IEEE 754. Цей стандарт передбачає використання трійки елементів – знаку, порядку та мантиси.
Сьогодні буде два інструменти для переводу десяткових чисел з плаваючою комою в двійкові числа з плаваючою комою.

Decimal to Floating-Point Converter (https://www.exploringbinary.com/floating-point-converter/) – конвертор у 32 та 64 бітні числа формату IEEE 754. Можливо декілька варіантів представлення числа, але будьте уважні – треба використовувати крапку, а не кому )))

Floating Point to Hex Converter (https://gregstoll.com/~gregstoll/floattohex/) – гарний конвертер зі зрозумілим інтерфейсом. Просто конвертер, нічого зайвого.

PS У вікіпедії на українській мові використовується термін «рухома кома», а не плаваюча кома. Англомовний термін - floating point – плаваюча крапка. В Україні ціла частина числа відділяється від дробової частини комою, тому кома, а не крапка. А от чому рухома, а не плаваюча – не знаю.

#ddlab
Слава Україні!
На минулому тижні виклав два нових відео про Signal Tap II. Це розповідь про вбудований логічний аналізатор, який можна вставити всередину мікросхеми ПЛІС і за його допомогою дивитись часові діаграми на екрані комп’ютера.
Але для цього треба зробити підключення до внутрішніх сигналів проекту та мати запущений пакет Quatus Prime.
Для своєї роботи Signal Tap II використовує вбудовану пам’ять ПЛІС для збереження відліків сигналів та схему керування, реалізовану всередині ПЛІС, яка визначає алгоритм запису відліків сигналів. Для відображення інформації використовується персональний комп’ютер, який під’єднаний до відлагоджувальної плати за допомогою завантажувального кабелю. Керування логічним аналізатором виконується за допомогою пакету Quartus Prime.
Слід відмітити деякі особливості логічного аналізатора Signal Tap II. По-перше, Signal Tap II може використовуватись лише в мікросхемах типу FPGA. По-друге, для використання вбудованого логічного аналізатора необхідна деяка кількість логічних елементів та вбудованої пам’яті ПЛІС. Кількість ресурсів логіки залежить від кількості сигналів, що аналізуються та умов зчитування даних. Об’єм пам’яті, що буде використаний логічним аналізатором, залежить від кількості каналів та їх розрядності. Тому необхідно розуміти, що можливості логічного аналізатора напряму залежать від вільних ресурсів мікросхеми. По-третє, Signal Tap II зчитує внутрішні сигнали лише за переднім фронтом тактового сигналу. Тому при його використанні доступний лише функціональний аналіз роботи проекту. Будь-який аналіз роботи з реальними затримками сигналів в цьому випадку не буде доступний.
А самі відео доступні тут:
Signal Tap II. Вступ - https://youtu.be/liYCoRsVRHY
Signal Tap II. Налаштування - https://youtu.be/WRdb8LDA4zw

#ddLab_YouTube
Слава Україні!
Сьогодні буде про одну з найкращих книжок по верифікації - Chris Spear SystemVerilog for Verification. Як кажуть американці - A Must-Read for Verification Engineers. Книга базується на курсах та матеріалах, які Кріс Спір розробляв для компанії Синопсис. Це матеріали по мові SystemVerilog та технологіям UVM, VMM. Від Greg Tumbush додалися питання, що викладаються в університетському курсі по верифікації.
Раджу брати 3 видання. Воно має багато змін, у порівнянні з попереднім.
По-перше, додався ще один автор Greg Tumbush ))
Тепер серйозно – друге видання описувало SystemVerilog у версії 2008 року, а третє – написано по версії SystemVerilog Language Reference Manual (LRM) 2012 року. Враховуючи попередній досвід та купу зворотного зв’язку від читачів більше 40 сторінок було переписано, і це не тільки описовий текст але й код прикладів.
Загалом книга має біля 300 сторінок і більше 500 прикладів. Це покриває всі нюанси, повязані з написанням тестбенчів на мові SystemVerilog. З того, що можна згадати: класи, рандомізація, констрейни та функціональне покриття.
Із складного – наслідування та поліморфізм (так-так, SystemVerilog – це об’єктно-орієнтована мова), віртуальні інтерфейси.
Також при читанні книги раджу використовувати список помилок з сайту автора SystemVerilog for Verification, Third Edition, Errata: http://www.chris.spear.net/systemverilog/errata.htm
Саму книгу можна подивитись тут: https://drive.google.com/drive/folders/1_CDLOiLMl1rBz7IHNh_wFcXXeeAJk42c?usp=sharing

#book
👍1
Слава Україні!
Продовжую розповідь про конвертери в числа з плаваючою комою, почату в одному з попередніх постів - https://t.me/ddlab_ua/62.

- FloatInfo https://mserdarsanli.github.io/FloatInfo/#binary16=hex:0000 - зручний та красивий конвертер. Підтримує 16, 32 та 64 розрядні числа. Також є підnримка чисел у форматі posit або Unum.

- Візуалізатор чисел з плаваючою комою: https://bartaz.github.io/ieee754-visualization/ IEEE-754 Floating Point representation explained. Мишкою обраєте 0 або 1 та отримуєте формулу, за допомогою якої проводяться обчислення. Все. Більше нічого.

- https://www.h-schmidt.net/FloatConverter/IEEE754.html # IEEE-754 Floating Point Converter - перетворює число в плаваюче необхідної розрядності. Показує також помилку, яку отримуємо при такій розрядності.

- Decimal to Floating-Point Converter https://www.exploringbinary.com/floating-point-converter/ - вводите десяткове число та обираєте формат, в якому треба подивитись результат:
Decimal (e.g., 122.75)
Binary (e.g., 1111010.11)
Normalized decimal scientific notation (e.g., 1.2275 * 10^2)
Normalized binary scientific notation (e.g., 1.11101011 * 2^6)
Normalized decimal times a power of two (e.g., 1.91796875 * 2^6)
Decimal integer times a power of two (e.g., 491 * 2^-2)
Decimal integer times a power of ten (e.g., 12275 * 10^-2)
Hexadecimal floating-point constant (e.g., 0x1.ebp6)
Raw binary (e.g., 0 10000101 11101011000000000000000)
Raw hexadecimal (e.g., 42f58000)
Натискаєте кнопку "Convert" і все - дивитесь результат.

- Float Toy https://evanw.github.io/float-toy/ - перетворює 16, 32 та 64-розрядне двійкове число на число з плаваючою комою.

#ddlab
Слава Україні!
Сьогодні у нас велика стаття повз яку пройти було не можливо – стаття про використання машинного навчання та штучного інтелекту в розробці мікросхем - AI/ML algorithms and applications in VLSI design and technology. Стаття вийшла у видавництві Elsevier у журналі Integration № 93 в листопаді цього року.
Це зовсім свіжа оглядова стаття, в якій показані інструменти, які можна застосовувати при розробці мікросхем для скорочення часу і зусиль для обробки даних на різних етапах від розробки специфікації мікросхеми до упаковки в корпус.
Застосування інструментів ШІ в індустрії не є чимось новим і ще з 2000-х років відомі експерименти по використання штучних нейронних мереж та генетичних алгоритмів при розробці топології комірок на рівні логічних елементів.
Зараз на етапі фізичного дизайну мікросхем використовують згорткові нейронні мережі з використанням різних методів навчання нейронної мережі. Це використовується на етапах планування шарів мікросхеми, розміщення, маршрутизації, синтезу тактового дерева тощо для оптимізації, прогнозування маршрутизації при розведенні ліній металізації.
Також описуються приклади застосування машинного навчання при виробництві мікросхем: для прогнозування відсотку виходу придатних мікросхем, аналізу надійності, функціональної перевірки мікросхем.
Загалом ця стаття гарний приклад аналізу літературних джерел (їх наведено 390) у цій темі.
Слава Україні!
Новий рік розпочнемо з вакансій по цифровому дизайну. Компанія Renesas шукає розробників мікросхем у свій офіс у Львові. Шукають як сеньойрів так і молодших розробників. Ось вимоги до молодшого інженера з проектування цифрових мікросхем:
студент/випускник в галузі електротехніки або суміжних дисциплін
знання Xcelium,(System)Verilog/VHDL/мови опису
розуміння процесу проектування інтегральних мікросхем
бажаний досвід проектування аналогових/цифрових схем
мотивованість та відповідальність
знання англійської мови на рівні (Pre-)intermediate

https://robota.ua/company1066483/vacancy9833749

Якщо ви робили лабораторні роботи по курсу схемотехніки та мовам опису апаратури + зробили якісний курсовий з цих дисциплін, то вам можна пробувати подаватись на цю вакансію.

Якщо ще не готові – продовжуйте вчитись, дивіться наші відео на каналі Лабораторії цифрового дизайну - https://youtube.com/@ddlab-ua
Forwarded from Lampa
Наші партнери з компанії Infozahyst, лідера напрямку радіоелектронної розвідки в Україні, шукають тестувальників радіоелектронної апаратури (HW QA)

Керівна позиція 1: https://infozahyst.com/vacan/team-lead-qa-rnd/

Керівна позиція 2: https://infozahyst.com/vacan/team-lead-серійні-вироби/

Провідний тестувальник: https://infozahyst.com/vacan/senior-hardware-qa-rnd/

Тестувальник: https://infozahyst.com/vacan/middle-hardware-qa/

Гідна оплата, що зацікавить людей зі скілами, цікаві проекти, участь в створенні очей і вух для Сил Оборони України, найкраще вимірювальне обладнання, бронювання

Будемо вдячні за репост 🙂
🔥2
wavedrom.png
14.1 KB
Слава Україні!
Маю надію, ви знаєте такий ресурс як wavedrom який дозволяє будувати часові діаграми з текстового опису в форматі json. Так от, автор цього ресурсу розробив плагін для VSCode, який дозволяє будувати часові діаграми прямо в VSCode. Для установки плагіну треба в VSCode відкрити закладку Extension і там в рядку пошуку обираєте Waveform Render. Після установки просто робите json файл, в якому пишете код для часових діаграм у відповідності до правил wavedrom. Потім натискаєте CTRL+Shift+P і обраєте пункт Waveform Render: Draw. Все – діаграми побудовані і їх можна зберігати у форматі растрового або векторного зображення.
От на такий приклад, який описує роботу лічильника з коефіцієнтом рахування 10, будуть побудовані часові діаграми, які показані на рисунку.
👍2
Код до попереднього прикладу

{signal: [
{name: 'clk', wave: 'p...........'},
{name: 'Q', wave: '345678934567', data:'0 1 2 3 4 5 6 7 8 9 0 1'},
['Q',
{name: 'Q0', wave: '010101010101'},
{name: 'Q1', wave: '0.1.0.1.0...'},
{name: 'Q2', wave: '0...1...0...'},
{name: 'Q3', wave: '0.......1.0.'},
],
{name: 'TQ1', wave: '010101010..1'},
{name: 'TQ2', wave: '0..10..10...'},
{name: 'TQ3', wave: '0......1010.'},
{name: 'cu', wave: '0........10.'},
],
head:{
text:'',
tick:0
}
}
Слава Україні!
Зранку понеділка, щоб було трохи легше входити в робочий ритм пара картинок про електроніку з мангою )))
Автор - Lim Wei Lun (Usanekorin) і це можна знайти в Х (раніше твіттер) або на сайті студії, де він працює - Collateral Damage Studios.
Картинка 1
https://www.artstation.com/artwork/Qz6RLB (пост в Х - https://twitter.com/azonenberg/status/1183956261018034176)
Картинка 2
https://twitter.com/azonenberg/status/1301427001526378496
Слава Україні!
Можливо ви чули, що наше міністерство цифрової трансформації оголосило курс на перетворення України в одного з великих гравців на ринку створення мікросхем. Свою думку я напишу потім і окремо (спойлер – не вірю), але на досвід росіян та китаців слід подивитися. росія грає в цю гру давно і не завжди вдало – треба ж попилити гроші. Але коли грошей вливають багато, то результат все ж буде. Але на глобальному ринку російська продукція нічого не вартує і нікому не цікава. А от гра китайців вже більш цікава. Тому сьогодні вам для вивчення документ на російській "Війна за чіпи 2.0". Він присвячений торгово-технологічній війні США та КНР за ринок напівпровідників. Ось головні тези:
Потужності виробництва чіпів у Китаї можуть збільшитися вдвічі протягом наступних трьох-п'яти років, незважаючи на зусилля США загальмувати розвиток цього сектора. Суть у тому, що Китай вкладає величезні інвестиції в локалізацію виробництва не лише напівпровідників, а й передових матеріалів, газів та обладнання, спрямовуючи зусилля на побудову замкнутої екосистеми виробництва передової мікроелектроніки, включаючи сегмент оборони.

У 2024 році американські законодавці зосередять увагу на зрілих технологічних процесах в Китаї та вже розпочали аналіз ланцюжків поставок, щоб з'ясувати можливість запровадження нових санкцій без шкоди для власної економіки. У 2023 році, у зв'язку зі спробами США блокувати постачання виробничого обладнання з Японії та Нідерландів до Китаю, китайські компанії істотно збільшили закупівлі верстатів.

Китайські підприємства активно розвивають свою власну екосистему виробництва мікроелектроніки, яка включає підприємства з повним циклом виготовлення чіпів — від розробки та дизайну інтегральних схем до тестування та пакування готової продукції. Ця екосистема, на відміну від поточної американської, не буде залежати від благополуччя та безпеки одного бунтівного острова.

Китайські компанії привертають фахівців з Південної Кореї та країн Європи для створення власних центрів компетенцій. Вони пропонують високі зарплати, гранти та шикарні умови праці, що є стандартом для багатьох галузей протягом останніх щонайменше 20 років. Через це торік у США почалася паніка у ЗМІ - почитайте текст Reuters. (https://www.reuters.com/technology/china-quietly-recruits-overseas-chip-talent-us-tightens-curbs-2023-08-24/)
Слава Україні!
Декілька тижнів тому я писав (https://t.me/ddlab_ua/47) про те, що Інтел вирішив виділити частину, яка замається виробництвом мікросхем ПЛІС - Programmable Solutions Group, у окремий бізнес. І 29 лютого цього року буде презентація цієї нової компанії. Для усіх бажаючих послухати як воно буде і як буде називатись – можна реєструватись на подію на сайті Інтела - https://intel.ly/3ul6IsO.
Як раз під цю знакову подію було вирішено випустити серію статей про історію компанії Altera. На цьому тижні вийшла перша з них у EE Journal - "Altera: The Once and Future FPGA Supplier, Part 1". Ось тут можна почитати – https://www.eejournal.com/article/altera-the-once-and-future-fpga-supplier-part-1/
А для тих, хто скучив за Xilinx там стаття про те, що AMD припиняє випуск мікросхем ПЛІС сімейств CoolRunner, XC9500, Spartan-II та Spartan-3. Цим мікросхемам зараз вже 25 років і більше (XC9500 випустили у 19995 році), тому було вирішено припинити їх виробництво. Стаття з роздумами про історію цих сімейств тут - https://www.eejournal.com/article/amd-discontinues-coolrunner-and-xc9500-cplds-and-spartan-ii-and-3-fpgas-buy-em-while-you-can/
І це доволі цікаво тому, що зараз фактично зникають останні сімейства ПЛІС з класичною CPLD архітектурою і залишаються тільки FPGA.
Якщо вам не зовсім зрозуміла різниця між FPGA та CPLD - дивіться відео про порівняння архітектур мікросхем FPGA та CPLD - https://youtu.be/-HnyRKxkmnA 
Архітектура FPGA - https://youtu.be/EUjKiVAXDAE
Слава Україні!
Сьогодні згадаємо одну класну книгу по розробці на ПЛІС - Advanced FPGA Design: Architecture, Implementation, and Optimization автора  Steve Kilts.
Книга 2007 року, але вона і досі дуже класна, бо присвячена саме архітектурним рішенням та типовим ситуаціям, які виникають при розробці цифрових систем. Якщо Харіси вам вже не дуже цікаві і хочеться чогось більш складного - то ця книга книга буде як раз на часі.
Що є в книзі:
- робота з частотами, тактовими доменами, сигналами скидання
- інструменти для симуляції та верифікації
- побудова ієрархії в системах, реалізація математичних функцій
- статичний часовий аналіз
- поради по розробці друкованих плат

Приклади, що наведені в книзі написані на Verilog, але коротенькі, щоб не збільшувати книгу.
Загальна оцінка - 10 з 10.

Тому качайте і сідайте читати. Де скачати - в інтернеті цієї книги багато і в різних місцях, тож викладати не буду.

#book
Слава Україні!
Синусоідальний тетрис.
Задача - мінімізувати сигнал. Задається якийсь сигнал і вниз падає синус, який додається до вже існуючого сигналу. цікава гра на потренувати перетворення Фур'є та розкладання в спектр.

https://www.andreinc.net/2024/02/06/the-sinusoidal-tetris
Forwarded from Lampa
У друзів з Ajax Systems з'явилося кілька позицій для студентів в напрямку Manufacturing!

1. Test technician:
https://www.work.ua/jobs/5520845/

Задачі після навчання:
▫️Забезпечення виробництва технічною підтримкою в обслуговуванні та ремонті обладнання
▫️Проведення технічного обслуговування на виробничому обладнанні згідно з планами та інструкціями
▫️Видача тест обладнання
▫️Оперативне обслуговування обладнання, від якого залежить виробничий план
▫️Вчасне замовлення комплектуючих на ремонт та ТО

2. Оператор SMT лінії:
https://www.work.ua/jobs/4231038/

Задачі після навчання:
▫️Контролювати напаювання поверхневим монтажем на друковані плати за допомогою автоматизованого обладнання
▫️Писати програми для обладнання (завантажувача / розвантажувача, принтера трафаретного друку, встановлювача, термопрофілю печі плавлення);
▫️Керувати обладнанням, забезпечувати його безперебійну роботу. Виконання виробничого плану
▫️Оптимізувати програми для обладнання (переважно встановлювача)
▫️Працювати з пневматичним обладнанням (встановлення трафарету на рамку)

3. Монтажник РЕА
https://www.work.ua/jobs/5375890/

Задачі після навчання:
▫️Монтаж dip (вивідних) компонентів на друковану плату згідно вимог (в роботі більше 50 різних плат для пристроїв Ajax)
▫️Контрольний огляд плати після запаювання

4. Оператор АОІ
https://www.work.ua/jobs/5446500/

Задачі після навчання:
▫️Перевірка плат за допомогою системи АОІ (автоматичної оптичної інспекції)
▫️Візуальний огляд запаяних друкованих плат
▫️Відбракування плат, які не відповідають критеріям якості

Є можливість поєднувати роботу з навчанням ☝️

По всім питанням звертайтеся до @sashaepik
Слава Україні!
На YouTube каналі Лабораторії цифрового дизайну з’явилося нове відео. Це перша частина лабораторної роботи по тригерах. В роботі будемо розбирати як описати тригер та написати тести для симуляції.
В кожному завданні до лабораторної є два тригери, які треба описати на мові Verilog. Для отримання інформації про тригер можна брати як старий довідник 90-х років так і datasheet. Ми будемо використовувати обидва варіанти.
Ми не робимо процедур формального синтезу тригерів та не рисуємо тригери з логічних елементів, бо у сучасній розробці у 99 % випадків ви не будете цього робити, а коли вже прийдеться таке зробити все одно треба буде вчити – бо всі і все забувають. Тому тільки те, що треба для роботи і все. Набір тригерів також дуже обрізаний – всього два типи – JK, D. Бо Т-тригер знайти дуже важко у явному вигляді, а RS – це асинхронна частина синхронних тригерів і він іде як бонус для всіх тригерів.
В першій частині описуємо тригер 1533ТВ10. І описуємо по книзі ім. Аванесяна 1993 року. Специфіка тригера полягає в тому, що у нього два виходи – прямий та інверсний, а в тригері, що знаходиться в ПЛІС – один. Тому описуємо двома способами – обидва виходи в блоці always та більш короткий варіант – інверсний вихід робимо оператором безперервного присвоювання за допомогою інверсії прямого виходу. Робимо компіляцію і дивимось результати синтезу.
І на цьому все, щоб було про що робити наступне відео.

https://youtu.be/i-QcJWvKpLM

Гарного перегляду.

#ddLab_YouTube
🔥2
FF.ZIP
24.7 KB
А це - приклади до лекцій, з яких можна брати готові проекти тригерів.