در آخرین روزهای سال 2020، خبرهای خوبی در مورد ESP32 منتشر شد. طرفداران این خانواده از میکروکنترلرها، با عضو جدیدی به نام ESP32-S3 آشنا میشوند. شرکت اسپرسیف در میکروکنترلر جدید خود به نام ESP32-S3 ویژگیهای جذابی برای هوش مصنوعی و اینترنت اشیا اضافه کرده است! از جدیدترین امکاناتی که شرکت سازنده به میکروکنترلر اضافه کر است میتوان به دو هستهای شدن میکروکنترلر، افزایش تعداد پایههای GPIO، اضافه شدن هوش مصنوعی و ویژگیهای امنیتی جدید آن نام برد.
بهطور کلی میتوان گفت ESP32-S3 از نظر اتصال، قدرت محاسبات هوش مصنوعی، امنیت، رابطها و پایههای I/o بهبود چشمگیری یافته است.
تراشههای مبتنی بر هوش مصنوعی به طور خاصی قادر هستند که محاسبات مربوط به هوش مصنوعی را بسیار سریعتر از پردازندههای معمولی انجام بدهند. اما این کار چگونه ممکن است؟
در نظر بگیرید که ما در یک سری محاسبات ریاضی نیاز به عمل ضرب یا تقسیم داریم، و دو پردازنده در اختیار داریم.در یکی از این پردازندهها ضربکننده و تقسیمکننده به صورت سختافزاری نهفته است. اما در پردازنده دیگر این واحدها وجود ندارند. ما باید عمل ضرب و تقسیم را به صورت نرمافزاری پیادهسازی کنیم. خب مسلما ما در پردازنده اول سرعت و کارایی بهتری خواهیم داشت. در تراشههای مبتنی بر هوش مصنوعی هم تقریبا همچین چیزی وجود دارد و واحدهایی که پردازش الگوریتمهای هوش مصنوعی را راحتتر میکند به صورت سختافزاری در تراشه وجود دارد.
مثلا در این تراشهها یک واحد پردازش عصبی یا NPU یا واحدهای دیگری وجود دارند که نقش شتابدهنده یا accelerator را دارند و به طور چشمگیری سرعت و کارایی را بهبود میدهد.
به صورت کلی پردازنده تراشههای مبتنی بر هوش مصنوعی به جای اینکه بر روی یک دیتای تکی یا منفرد پردازش را انجام دهند، پردازش را بر روی یک بردار یا یک آرایه یک بعدی انجام میدهند، که به Vector processor معروف است.
ESP32-S3 از پردازنده دو هستهای LX7 بهره میبرد که 32 بیتی بوده و فرکانس کاری آن تا 240MHz افزایش میباید. این در حالی است شرکت سازنده در نسخه قبل از پردازنه تک هسته ای استفاده کرده بود.
سازنده 512Kb حافظه SRAM و 384 کیلوبایت حافظه RAM بر روی برد این دستگاه تعبیه کرده است است. حتی میتوانید با استفاده از رابط octal SPI حافظه خارجی نیز به آن متصل کنید. همچنین برای اتصال بیسیم میتوانید از وای فای و بلوتوث (legacy Bluetooth و Bluetooth Low-Energy 5.0) نیز استفاده کنید.
برنامههای هوش مصنوعی میتوانند از دستورالعملهای برداری میکروکنترلر استفاده کنند. این دستورالعملها، کمک بسیار زیادی در کار پردازش سیگنال و شبکههای عصبی میکنند.
ویژگیهای جدید ESP32-S3
ESP32-S3 در مقایسه با ESP32، از پیشرفت سخت افزاری قابل توجهی برخوردار است. برخی از این ویژگیها مشابه همان نسخه ESP32-S3 تک هستهای است. اما یک سری ویژگیهای امنیتی به آن اضافه شده است. برای مثال، همان طور که در تصویر بالا نیز مشاهده میکنید، کنترل کننده HMAC برای تأیید اعتبار پیامها استفاده میشود. ماژول Digital Signature (DS) نیز پیامها را بهصورت سخت افزاری و با سرعت بیشتری امضا میکند. همچنین قابلیت بوت امن نیز وجود دارد که قبل از بوت شدن، امضای RSA-PSS را در ایمیج (img) بررسی میکند. همینطور رمزگذاری “Flash Encryption” برای حافظه فلشهای خارجی استفاده میشود. همچنین به کمک “World Controller” امکان پردازش در یک محیط کاملاً مجزا و امن امکان پذیر است. این امر باعث میشود تا محاسبات و وظایف حساس، از دیگر برنامهها جدا شود.
ESP32-S3 نه تنها سریعتر و هوشمندتر است، بلکه قابلیت انعطاف بیشتری نیز دارد. ESP32-S3 از 44 پایه GPIO قابل برنامه ریزی شامل SPI, I2S, I2C, PWM, RMT, ADC, DAC, UART, SD/MMC host و TWAI استفاده میکند.
پلتفرم ESP-IDF
شرکت سازنده ESP32-S3، یعنی اسپرسیف (Espressif Systems) قبلاً پلتفرمی به نام ESP-IDF را برای برنامهنویسان ارائه داده بود. در آپدیت جدید این پلتفرم، هم اکنون از ESP32-S3 نیز پشتیبانی میشود. هرچند، پشتیبانی از کتابخانههای نرمافزاری برای ویژگیهای هوش مصنوعی ممکن است بلافاصله در دسترس نباشد، اما میتوانید در گیت هاب کتابخانههای ESP-WHO (تشخیص چهره) و ESP-Skainet (دستیار صوتی) را پیدا کنید.
برای اطلاعات بیشتر، صفحه محصولات ESP32-S Series SoC را در وب سایت اسپرسیف بررسی کنید.