Tolga Ayav, K.Atilla Toker İzmir Yüksek Teknoloji Ensitütüsü

Slides:



Advertisements
Benzer bir sunumlar
KAFA Open-Source/Open-Implementation, 32-bit CPU
Advertisements

CPU Tasarım – 2 Single – Cycle CPU Veriyolu Tasarımı
CPU Tasarım – 3 Single – Cycle CPU Controller Tasarımı
BİSA CPU   Proje Danışmanı Yrd.Doç.Dr.Aydoğan Savran   Proje Ekibi Arş.Gör.Özkan Akın.
Agah Burak DEMİRKAN Ahmet ÇOBAN Ahmet SÖNMEZ Uğurhan KUTBAY
8086 Programlama – Kısım III Prosedürler
Algoritma.  Algoritma, belirli bir görevi yerine getiren sonlu sayıdaki işlemler dizisidir.  Başka bir deyişle; bir sorunu çözebilmek için gerekli olan.
Donanım Birimleri.
LUCA BILGISAYARLı MUHASEBE PROGRAMı Öğr. Gör. Coşkun Aliyazıcıoğlu KTÜ Beşikdüzü Meslek Yüksekokulu Şubat
ATP MESLEK ALANLARINA GEÇİŞ KOŞULLARI
LUCA Bilgisayarlı muhasebe programı
Neden donanım kullanıyoruz? Daha hızlı (Performans) Paralel Düşük güç tüketimi Maliyet Boyut Her yere bilgisayar?
Yapılan çalışmanın detaylarını, yöntemlerini, farsa şekil, formül, yazılım algoritması, çalışma biçimleri, çalışma durumları, uygulama alanları, çalışmanın.
Bilişim Teknolojileri ve Yazılım Dersi
C Programlama Dili Çağdaş Hakan Aladağ.
Altera ile proje hazırlama
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Okul Deneyimi Dersi Eser Çeker (Uz.).
Yükseltgenme-İndirgenme (Redoks) Tepkimeleri
Bilgisayar Donanım ve Sistem Yazılımı
BARALAR.
Mikroişlemciler Temel I/O Arayüzleri.
PROGRAMLAMA TEMELLERİ
İleri Algoritma Analizi
BİLİŞİM SİSTEMLERİ GÜVENLİĞİ (2016)
ÖĞRENCİ İŞLERİ SİSTEMİNE GİRİŞ
Mikroişlemciler Temel I/O Arayüzleri.
BİLGİSAYAR ÇEŞİTLERİ.
Mikroişlemci Sistemleri
Bilgisayar Donanım ve Sistem Yazılımı
STORAGE BÜŞRA KARADENİZ
Sunucu Çeşitleri Mehmet Ali Uluekmekçi.
Mikroişlemcili Sistem Tasarımı
Bilgisayar nedir? Bilgisayar; Zor ve karışık hesaplar yapabilen büyük miktarlardaki bilgileri depolama kapasitesine sahip otomatik bir cihazdır.
Ağ Donanımları Cihazlar
Bilgisayar Sisteminin Anatomisi
NİŞANTAŞI ÜNİVERSİTESİ
D o l p h i n M Doğal Taş Üretim Takip & Kaynak Planlaması Yazılımı
Meriç ÇETİN Pamukkale Üniversitesi Bilgisayar Mühendisliği Bölümü
B+-Ağaçları.
TEKNOLOJİ VE TASARIM DERSİ 7.D.1. Özgün Ürünümü Tasarlıyorum.
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
PROGRAMLAMAYA GİRİŞ VE ALGORİTMA
Bilgisayar Bilimi Koşullu Durumlar.
LOJİK KAPILAR (GATES) ‘Değil’ veya ‘Tümleme’ Kapısı (NOT Gate)
NİŞANTAŞI ÜNİVERSİTESİ
İŞLETİM SİSTEMİ KATMANLARI (Çekirdek, Kabuk ve diğer temel kavramlar)
Bilgi Teknolojileri Hafta 01
Bilgisayar Donanımı BELLEKLER –ROM.
NİŞANTAŞI ÜNİVERSİTESİ
İşlemciler.
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
BLM113 Bilgisayar Bilimlerine Giriş
NİŞANTAŞI ÜNİVERSİTESİ
5.6 İKS Dokümantasyonu Her çiftçi için belli dokümanlar ve İKS seviyesinde tutulmalıdır. ( İKS Rehberi 5.6’da belirtildiği gibi) Bu kayıtlar hem iç hem.
NİŞANTAŞI ÜNİVERSİTESİ
NİŞANTAŞI ÜNİVERSİTESİ
Boğaziçi Üniversitesi Network Araştırma Laboratuvarı (NETLAB)
Bilgehan Arslan, Süreyya Gülnar
NİŞANTAŞI ÜNİVERSİTESİ
SES KOMUT TANIMA İLE GEZGİN ARAÇ KONTROLÜ
Önbellek Hafızalar BIL-304: Bilgisayar Mimarisi
Bilimsel Araştırma Yöntemleri
Bilişim Güvenliği: Güvenli Hesaplama
Medİkal görüntülerde doktor – hasta bİlgİ gİzlİlİğİnİn sağlanmasI
Sunum transkripti:

Tolga Ayav, K.Atilla Toker İzmir Yüksek Teknoloji Ensitütüsü 03-04-2002 CPU-TURKEY 2008 CryptOdin Mikroişlemcisi Tolga Ayav, K.Atilla Toker İzmir Yüksek Teknoloji Ensitütüsü 08-2008 Ver:01 29/12/2018 K.Atilla TOKER

CPU-TURKEY CryptOdin – Genel Tanıtım CryptOdin, özellikle gömülü sistem uygulamaları için tasarlanmış ve şifrelenmiş (kriptolu) program kodlarını çalıştırabilen 16 bitlik bir mikroişlemcidir. CryptOdin, detaylarını ayrı listede verdiğimiz komutları yürütüp, anahtar “dipswitch” ya da “crypt on/off” komutu ile kriptolu/kriptosuz seçilebilir, 16 bit bir ”pipeline” işlemci olarak tasarlanmıştır. Program tasarımı Vhdl ile yazılmış olup derlemesinde Xilinx/ISE programı, Simulasyonunda ise Mentor/ModelSim programı kullanılmıştır. 29/12/2018

CPU-TURKEY CryptOdin – Genel Tanıtım Gömülü sistemlerde son derece önemli olabilecek konulardan biri de algoritmanın gizlenmesidir. Örneğin askeri amaçlı bir donanımın içerisinde çalışmakta olan programın gizlenmesi büyük önem taşıyabilir. CryptOdin, harici hafızada şifrelenmiş olarak saklanan program kodunu çalıştırarak en üst seviyede güvenlik sağlayacaktır. CryptOdin işlemcisinin ters mühendislik yöntemleriyle analiz edilmesini engelleyecek önlemlerin alınmasıyla (entegrenin üretiminde) elde edilecek güvenlik, kullanılan şifreleme standartının gücüne bağlı olacaktır. 29/12/2018

CPU-TURKEY CryptOdin – Detaylı Tanıtım CryptOdin’in temel özellikleri: 16 bit adres ve 16 bit veri yolu Harvard Mimarisi 32 adet kayıtçı 38 adet komut 16 bit ve 32 bit olmak üzere iki farklı uzunlukta komut Pipelining Max. 68 MHz saat frekansı Kriptolu program çalıştırabilme 29/12/2018

CPU-TURKEY CryptOdin – Komut listesi CryptOdin 38 adet işlem koduna sahiptir: Nop   Add Ri,Rj; Addi Ri, #im Sub Subi Mul Ri,Rj Muli Mulu Inc Ri Dec Cmp Andr Andi Orr Ori Notr Ri ; Rxi Xorr Xori Sllr Srlr Slar Ri Srar Lw Rxi,address Sw Syscal address Hlt   Beq offset Bne Ba Bf offset+extension BL Movi Ri, #im Movdi @Ri,Rj Movsi Ri,@Rj Mov Ri,Rj Movii @Ri,@Rj Clr @Ri Ret 29/12/2018

CPU-TURKEY CryptOdin – İç Yapısı İç yapısı mikroişlemci şematiğinde daha detaylı görülebilir (Sonraki slayt). CryptOdin’de 32 adet 16 bit register R0-R31 olarak “regfile.vhd” içinde tanımlanmıştır. Bunların dışında tasarımda; “Control Unit”, “EMAD-External Memory Access Unit with Decrypter”, “Instruction Register”, “Program Counter”, “ALU”, “Stack”, “datapath”, “Flags” ve “multiplexer” blokları mevcuttur. RAM/ROM ve “Program Memory” blokları dışarıda olacak şekilde tasarlanmştır. ALU’da çarpma operasyonları, “structural” olarak bir çarpım devresiyle değil “behavioral” olarak VHDL’de A*B ifadesiyle gerçeklenmiştir. Bu, FPGA’de hız avantajı sağlamaktadır. 29/12/2018

CPU-TURKEY CryptOdin – Şematik 29/12/2018

CPU-TURKEY CryptOdin – VHDL Sentezleyici Sonuçları Hedef FPGA modeli Spartan3E - xc3s500e olarak seçilmiştir. Buna göre FPGA kullanımıyla ilgili sentezleyici raporu: Number of Slices: 1020 out of 4656 21% Number of Slice Flip Flops: 815 out of 9312 8% Number of 4 input LUTs: 891 out of 9312 20% Number of IOs: 70 Number of bonded IOBs: 70 out of 92 76% IOB Flip Flops: 1 Number of MULT18X18SIOs: 1 out of 20 5% Number of GCLKs: 1 out of 24 4% Zamanlamayla ilgili rapor ise: Min. clock period: 14.511ns (Max. frequency: 68.912MHz) 29/12/2018

CPU-TURKEY CryptOdin – Simulasyon Aşağıdaki örnek program (ROM_Ext.vhd içerisinde yer almaktadır) ile simüle edilen CryptOdin’in Modelsim çıktıları takip eden slaytlarda görülebilir: DEC R1 SW R1, 0003 MOVI R0, 0005 NOP INC R1 BEQ +02 INC R31 HLT Bu programın toplam çalışma süresi slaytlardan da görüleceği gibi 34 saat periyodudur (34 * 14.511 ns). 29/12/2018

CPU-TURKEY CryptOdin – Modelsim Çıktısı - 1 29/12/2018

CPU-TURKEY CryptOdin – Modelsim Çıktısı - 2 29/12/2018

CPU-TURKEY CryptOdin - Sonuçlar Cryptodin, yarışmanın şartnamesinde verilen tüm komutları çalıştırabilmektedir. Pipelining ile bir komut işleme süresi iki katına çıkartılmıştır. Minimum saat periyodu: 14.511 ns olarak sentezleyici tarafından rapor edilmiştir. CPU şematiğinde gösterilen ve şifre çözme görevini üstlenecek olan EMAD ünitesi henüz gerçeklenmemiştir. EMAD.vhd şu anda herhangi bir şifre çözme gerçekleştirmeden giriş ve çıkışlarını içeride doğrudan birbirine bağlayan boş bir ünitedir. EMAD ünitesinde Blowfish algoritmasının gerçeklenmesi düşünülmüş olup üzerinde çalışmaya devam edilmektedir. 29/12/2018