Коліно глибоко в світлодіоді: хакери отримують загибель на Ikea Smart Bulb
Група хакерів приїхала вгору і працює на незвичайній платформі: Ikea Smart Bulb. Група писала свій проект на наступний хак і спільна деталі реалізації.
Ця група вирішила отримати Doom, що працює на низькочастотній платформі та встановити конкретні правила для себе в тому, що б і не буде прийнятним. Пристрій повинен мати розумну обчислювальну потужність відносно оригінальних вимог до дому. Команда посилається на 486-33, хоча я можу сказати вам від особистого досвіду, який ви можете грати за допомогою скромного перегляду Frustum на апаратному комплексі як слабкий як 80386SX-16. Тільки мікроконтроллер всередині вибраного пристрою може бути використаний для запуску гри. Додавання невеликого кольорового дисплея та додаткової флеш-пам'яті для зберігання файлів були прийнятними. Мінімальна мета полягала в тому, щоб грати E1M1, інакше відомий як перший рівень "колінного в мертвих".
Команда спочатку планувала розгорнути лампу Ikea Trådefri. Хоча скромний 40 МГц Cortex M4 був безліч потужний, чіп мав 32-х / оперативної пам'яті. Це було вважати неможливим. Потім, через кілька місяців, IKEA оновлюється з новою моделлю. Ці нові лампи показали 80 МГц Cortex-M33 та 108KB оперативної пам'яті з 1 Мб спалаху NAND. Команда також додається додаткова 8 Мб спалаху NAND.
Розробка була оброблена порівняно потужною кори-м7. Чіп STM, який вони використовували, STM32H743, оснащені карт пам'яті QSPI (Quad Serial Parallel Interface) NAND Flash Chip, що дозволяє команді лікувати його як спалах, що відображається пам'яті.
Командна команда за допомогою оптимізацій, які він зробив, щоб отримати Doom, що працює за 108 кб оперативної пам'яті, на відміну від 160KB +, яку вони оцінюють, вимагає за умовчанням. Вони зберегли значну кількість пам'яті, перетворюючи типи даних - загибелі використовували 32-бітні цілі числа в деяких випадках, де потрібно лише 8 або 16 бітів. У кількох випадках вони взяли дані, які спочатку зберігалися в оперативній пам'яті, і перемістили його до NAND Flash, щоб звільнити достатню здатність, щоб грати в першу чергу. Вони навіть оптимізували буфер пам'яті, щоб заощадити 5kb оперативної пам'яті. Одне цікаве, що їх тестування виявлено: продуктивність, навіть на смарт-лампочку, визначається швидкістю доступу до флеш-пам'яті, ніж швидкість процесора.
Але навіть після того, як у команді була проблема: швидкість передачі даних на STM32H743 були досить швидкими, але EFR32MG21 вони працювали з усередині IKEA Smart Bulb, не підтримав той самий високошвидкісний (відносно) інтерфейс. Їх початкова пропускна здатність зберігання була обмежена до 2,5 Мб / с, поки вони не розігнали чип до 80 МГц. Що покращило пропускну здатність до 5 Мб / с. Я дозволю їм пояснити, як вони знову подвоїлися:
EFR32MG21 має три USARTS. ONE O ТЕМ використовується для друку налагоджувальних повідомлень та завантаження файлу WAD до зовнішнього спалаху. У нас є два usart ліворуч ... і периферійну рефлекторну систему! З цими двома ми можемо синхронізувати два USARTS (працюючи в режимі SPI), щоб вони читали дані одночасно, фактично створюючи подвійну SPI (DSPI). На щастя, пам'ять QSPI також підтримує подвійне читання, і таким чином ми можемо досягти 10 Мб / с!
Історія триває, щоб описати, як вони зберігали два синхронізації Spis, а додаткова робота команда зробила, щоб отримати аудіобічну роботу та відтворювала гру при ультра-насильстві, не вичерпуючи оперативної пам'яті. Існують також покрокові інструкції щодо побудови пристрою. Загальна продуктивність та якість зображення краще, ніж версія GBA. Група вказує на те, що GBA 16,7 МГц ARM7TDMI був лише лише 0,9 Dmips / MHz, а CM33 досягає ~ 1.5dmiss / МГц і працює на 80 МГц. Команда не здійснюється оптимізацією DOOM для їх зменшувальної платформи, і вони планують покращити як продуктивність, так і за оперативною пам'яттю у найближчі дні.
Читати далі
З вічним загибеллю, Bethesda демонструватиме новий потік гри «Orion»
Bethesda готується до розгортання своєї власної технології потокової гри під назвою Orion. Однак, це не альтернатива поточним платформам для потокових ігор. Замість цього, Orion буде інтегруватися з іграми, щоб зробити потокове обслуговування краще.