PicoRV32 tabanlı yonga üzeri sistem (System-on-Chip, SoC), 32 bit RV32I RISC-V işlemci çekirdeği ile elektrokardiyogram (ECG) sinyalinde R-tepesi ve morfolojik anomali işaretlerini çıkarmak için tasarlanmış özel, çarpansız bir donanım hızlandırıcısını aynı CMOS yonga üzerinde birleştiren dijital bir biyosinyal işleme sistemidir. Çalışmadaki hızlandırıcı, üç örneklik sabit K = [−1, 2, −1] ayrık Laplasyen çekirdeğini ve programlanabilir bir eşik karşılaştırıcısını kullanır. Çekirdek katsayılarının yalnız −1 ve 2 olması sayesinde genel amaçlı donanım çarpanları kaldırılmış; hesaplama iki'nin tümleyeni negatif alma, bir bit sola kaydırma ve toplama işlemlerine dönüştürülmüştür.
Sistem yalnız RTL veya simülasyon seviyesinde bırakılmamıştır. Önce yazılım referansı ve FPGA prototipiyle doğrulanmış, daha sonra ticari 180 nm CMOS sürecinde fiziksel olarak tasarlanıp tape-out yapılmış, QFP-160 paket içinde gerçek silikon üzerinde özel PCB ile test edilmiştir. Yonga aktif çekirdek alanı 0,936 mm², standard-cell sayısı 9373 ve yerleşim yoğunluğu %75,2'dir. Hedef 100 MHz iken post-route RC analizinde 101 MHz timing closure elde edilmiş ve gerçek silikon 100 MHz'de çalıştırılmıştır.
MIT-BIH Arrhythmia Database içinden seçilen beş kayıtta toplam 10.393 atım değerlendirilmiştir. Üretilmiş yonga bunların 9965'ini doğru sınıflandırarak %95,88 Normal/Abnormal doğruluğu elde etmiştir. Aynı veri üzerinde kayan noktalı yazılım referansı %95,94 doğruluk vermiş; silikon ile yazılım arasında yalnız altı atımlık, yani 0,06 yüzde puanlık fark görülmüştür.
Ancak bu %95,88 değeri genel nüfusa veya görülmemiş hastalara ait çapraz-hasta doğruluğu değildir. Her MIT-BIH kaydı için eşik kendi hastasının/kaydının etiketlerine göre kalibre edilmiştir. Ayrıca kaynak, giriş ECG sinyalinin standart ön işlemeden geçmiş olduğunu varsaymaktadır. Bu nedenle çalışma, ham gürültülü ECG üzerinde bağımsız klinik tanı yapan tamamlanmış bir giyilebilir tıbbi cihazın klinik doğrulaması olarak yorumlanmamalıdır.
1,8 V çekirdek beslemesi ve 100 MHz'de ölçülen aktif güç 25,2 mW'tır. Derin uyku durumunda 1,0 V'ta ölçülen kaçak akım 44 nA, karşılık gelen güç ise 44 nW'tır. 400 örnekli bir işleme penceresi için verilen 7,1 ms uçtan uca süre ve 25,2 mW aktif güç birlikte değerlendirildiğinde kaynak yaklaşık 178,9 µJ aktif işleme enerjisi hesaplamaktadır.
Araştırmanın temel problemi nedir?
Giyilebilir ECG sistemleri kalp ritmini uzun süre boyunca izlemek zorundadır. Bu sistemlerde QRS kompleksi ve özellikle R tepesi, diğer ECG bileşenlerine göre daha keskin ve yüksek genlikli zamansal değişim gösterdiği için atım bölütleme ve morfolojik anomali tespitinde önemli bir işaret noktasıdır.
Bununla birlikte giyilebilir bir cihazda sürekli çalışan karmaşık CNN veya genel amaçlı multiply-accumulate (MAC) motorları silikon alanı, dinamik güç, bellek erişimi ve işlemci çevrimi tüketir. Yalnız yazılım kullanan genel amaçlı mikrodenetleyicide de aynı tekrarlı filtreleme işlemleri CPU'nun sürekli aktif kalmasına ve instruction-fetch enerjisinin artmasına neden olabilir.
Çalışmanın yaklaşımı, sistem yönetimi, haberleşme ve program akışını küçük bir RISC-V çekirdeğine bırakıp sürekli tekrarlanan ECG özellik çıkarımını sabit işlevli, çok küçük bir donanım hızlandırıcısına taşımaktır.
ECG'de QRS kompleksi ve R tepesi neden seçildi?
Standart ECG çevrimi P dalgası, QRS kompleksi, T dalgası ve bazı durumlarda U dalgasından oluşur. QRS kompleksi ventriküler depolarizasyon sırasında oluşan hızlı değişimleri içerir. Özellikle R tepesi çevresinde sinyalin örnekler arasındaki eğimi yüksektir.
Bu özellik, birinci veya ikinci türev benzeri yüksek geçiren işlemlerin QRS bölgesini düşük frekanslı temel çizgi sürüklenmesine ve daha yavaş P/T bileşenlerine göre daha güçlü vurgulayabilmesine olanak verir.
Sabit [−1, 2, −1] Laplasyen Çekirdeği R Tepesini Neden Vurguluyor?
K = [−1, 2, −1] çekirdeği üç ardışık ECG örneğinin ayrık ikinci farkını hesaplar; yavaş değişen veya sabit sinyallerde komşu örnekler birbirine yakın olduğu için çıktı küçülürken, R tepesi gibi keskin zamansal değişimlerde orta örneğin komşularına göre farkı büyür ve filtre çıktısı yükselir. Kaynağın frekans analizi de filtrenin DC'de sıfır, yüksek frekansta daha yüksek büyüklük veren yüksek geçiren davranışını göstermektedir.
Denklem (1): Sabit filtre çekirdeği
Kaynakta özel donanımın temel çekirdeği:
\[ K=[-1,\;2,\;-1] \tag{1} \]
olarak verilmiştir.
Bu üç katsayı trainable bir CNN ağırlık kümesi değildir. Kaynak tarafından doğrudan donanıma sabitlenmiş üç tap'li bir FIR/Laplasyen çekirdeğidir.
−1 katsayısı bir donanım çarpanı gerektirmez; iki'nin tümleyeninde negatif alma işlemiyle uygulanabilir. 2 katsayısı da genel amaçlı çarpan yerine bir bitlik sola kaydırmayla uygulanabilir. Bu basit katsayı seçimi bütün hızlandırıcının mimarisini belirlemektedir.
Denklem (2): Üç örnekli ayrık Laplasyen
Hızlandırıcının her kaydırmalı pencerede hesapladığı değer:
\[ y[n]=-x[n-1]+2x[n]-x[n+1] \tag{2} \]
şeklindedir.
Burada:
- x[n−1]: önceki ECG örneği,
- x[n]: merkez ECG örneği,
- x[n+1]: sonraki ECG örneği,
- y[n]: Laplasyen özellik çıktısıdır.
Sabit veya çok yavaş değişen bir sinyalde üç komşu değer birbirine yakınsa −x[n−1] + 2x[n] − x[n+1] yaklaşık sıfıra yaklaşır. Ortadaki örnek komşularından belirgin biçimde ayrıldığında ise sonuç büyür. Bu nedenle ifade ECG'deki yüksek eğrilik/keskinlik bölgelerine duyarlıdır.
Denklem (3): Programlanabilir eşik kararı
Laplasyen çıktısı daha sonra programlanabilir T eşiğiyle karşılaştırılır:
\[ result[n]= \begin{cases} 0, & y[n] < T \\ 1, & y[n] \geq T \end{cases} \tag{3} \]
Sonuç yalnız bir bittir. 0, eşik aşılmadığını; 1, Laplasyen özelliğinin programlanmış eşiğe eşit veya ondan büyük olduğunu bildirir.
Burada önemli bir sınır vardır: algoritma karmaşık bir çok-sınıflı aritmi sınıflandırıcısı değildir. Tek bir sabit yüksek geçiren özellik ile bir eşik karşılaştırmasını birleştiren ikili karar sistemidir.
Denklem (4): Filtrenin z-dönüşümü
Kaynak, üç tap'li simetrik FIR filtrenin z-dönüşümünü:
\[ H(z)=-z+2-z^{-1} = 2-(z+z^{-1}) \tag{4} \]
olarak verir.
Bu gösterim, filtreyi yalnız üç aritmetik işlem olarak değil bir ayrık zamanlı doğrusal sistem olarak incelemeyi sağlar.
Denklem (5): Frekans cevabı
Birim çember üzerinde \(z=e^{j\omega}\) yazıldığında:
\[ H(e^{j\omega}) = 2-2\cos\omega = 4\sin^2(\omega/2) \tag{5} \]
elde edilir.
İfade gerçek ve negatif olmayan bir büyüklüktür. \(\omega=0\) için:
\[ H(e^{j0})=0 \]
olur. Dolayısıyla DC bileşeni bastırılır.
Düşük frekanslarda \(\sin(\omega/2)\approx\omega/2\) olduğundan:
\[ H(e^{j\omega})\approx\omega^2 \]
yaklaşımı oluşur. Kaynak bunu temel çizgi sürüklenmesi gibi çok düşük frekanslı bileşenlerin hedef QRS bandına göre güçlü biçimde bastırılmasıyla ilişkilendirmektedir.
\(\omega\) sıfırdan Nyquist frekansına doğru yükseldikçe ifade monoton artar ve \(\omega=\pi\) noktasında transfer büyüklüğü 4'e ulaşır. Kaynak metin bu noktayı “maximum power gain of 4” biçiminde adlandırmaktadır; Verianla bu ifadeyi kaynak dışı bir güç-karesi hesabına dönüştürmemiştir ve gösterilen Denklem (5)'i aynen temel almaktadır.
1 Hz ile 10 Hz arasındaki yaklaşık 40 dB fark nereden geliyor?
MIT-BIH kayıtları 360 Hz örnekleme frekansına sahiptir. Kaynak Denklem (5)'i kullanarak 1 Hz için:
\[ |H(e^{j\omega})|_{1Hz} \approx 3.05\times10^{-4} \]
ve 10 Hz için:
\[ |H(e^{j\omega})|_{10Hz} \approx 3.04\times10^{-2} \]
değerlerini vermektedir.
İki büyüklük arasındaki yaklaşık 100 katlık oran, genlik oranı dB cinsinden değerlendirildiğinde yaklaşık 40 dB'lik fark oluşturur. Kaynak bunu QRS enerji bandının 1 Hz civarındaki temel çizgi bileşenlerine karşı güçlü biçimde vurgulanmasının matematiksel göstergesi olarak kullanmaktadır.
Denklem (6): N-bit girişte en kötü durum bit büyümesi
Her ECG örneğinin iki'nin tümleyeninde işaretli N-bit tamsayı olduğu kabul edilir:
\[ x[n]\in[-2^{N-1},\;2^{N-1}-1] \]
Çekirdeğin L1 normu:
\[ ||K||_1=|-1|+|2|+|-1|=4 \]
olduğu için kaynak çıkışın mutlak değerini:
\[ |y[n]| \leq ||K||_1\max_n|x[n]| \leq 4\times2^{N-1} = 2^{N+1} \tag{6} \]
ile sınırlar.
Bu hesap, aritmetik veri yolunun neden giriş genişliğiyle aynı tutulmadığını açıklar. Tasarım, her N-bit örneği işlemden önce N+2 bite işaret genişletir. Böylece negatif alma, bir bit sola kaydırma ve üç terimi toplama sırasında taşma riski azaltılır ve kaynak, geçerli giriş dizileri için bit-exact hesaplama yapıldığını belirtir.
İki'nin tümleyeni negatif alma nasıl uygulanıyor?
İki'nin tümleyeninde bir sayının negatifi bitlerin terslenip 1 eklenmesiyle elde edilir:
\[ -x=\overline{x}+1 \]
Kaynak, girişin N bit iken önce N+2 bite genişletilmesi nedeniyle geçerli giriş aralığında negatif alma işleminde temsil edilemeyen minimum değere ulaşılmadığını belirtmektedir.
2 ile çarpma neden gerçek bir çarpan gerektirmiyor?
İkili tamsayı gösteriminde 2 ile çarpma bir bitlik aritmetik sola kaydırmayla uygulanabilir:
\[ 2x[n]=x[n]\ll1 \]
Bu nedenle 2 katsayısı için multiplier hücresi kullanılmaz; işlem temelde kablolama ve bit konumlandırmasıyla gerçekleştirilir.
PicoRV32 neden seçilmiş?
PicoRV32, küçük silikon alanı hedefleyen 32 bit RISC-V işlemci çekirdeğidir. Kaynak ortalama CPI değerini yaklaşık 4 olarak belirtmektedir. Mimari, karmaşık bus protokolleri yerine basit native memory interface kullanır.
Bu çalışmada işlemci yalnız temel RV32I konfigürasyonuyla kullanılmıştır. Donanım multiply/divide M-extension ve Pico Co-Processor Interface (PCPI) devre dışı bırakılmıştır. Böylece sistemin CPU tarafında da büyük çok bitli donanım çarpanları kullanılmamıştır.
MMIO veri yolu nasıl çalışıyor?
PicoRV32'nin native bellek arayüzünde altı temel sinyal kullanılır:
- mem_valid,
- mem_ready,
- mem_addr,
- mem_wdata,
- mem_wstrb,
- mem_rdata.
İşlemci bir okuma veya yazma başlatırken mem_valid sinyalini ve hedef adresi üretir. İlgili çevre birimi işlem bittiğinde mem_ready sinyalini yükseltir.
Bu tasarımın önemli özelliği, hızlandırıcıya özel yeni bir RISC-V komutu eklenmemesidir. Hızlandırıcı standart LW ve SW yükleme/saklama komutlarıyla normal bir bellek-eşlemeli çevre birimi gibi kontrol edilir.
| Temel adres | Blok | Görevi |
|---|---|---|
| 0x0000_0000 | SRAM | Uygulama kodu ve veri alanı |
| 0x0200_0000 | UART_DIV | UART baud-rate bölücü ayarı |
| 0x0200_0004 | UART_DAT | UART veri gönderme/alma registerı |
| 0x0300_0000 | LED | Debug durum GPIO'su |
| 0x0400_0000 | ECG_CNN_ACC | ECG hızlandırıcı veri ve kontrol registerları |
Kaynağın bellek haritasında hızlandırıcı blok adı ECG_CNN_ACC olarak geçmektedir. Buna rağmen bu makaledeki matematiksel işlev bir eğitilebilir CNN değildir; kaynak hızlandırıcıyı sabit üç tap'li FIR/Laplasyen filtre olarak tanımlar.
Hızlandırıcının kendi registerları
| Ofset | Register | İşlev |
|---|---|---|
| +0x00 | THRESHOLD | Programlanabilir T karar eşiği |
| +0x04 | SAMPLE_0 | x[n−1] |
| +0x08 | SAMPLE_1 | x[n] |
| +0x0C | SAMPLE_2 | x[n+1] |
| +0x10 | RESULT | 1-bit sınıflandırma/deteksiyon sonucu |
Firmware önce T eşiğini programlar, daha sonra kaydırmalı penceredeki üç örneği registerlara yazar ve RESULT registerını okur.
Tek çevrimli hızlandırıcı ile iki çevrimli MMIO işlemi arasındaki fark
Kaynakta hızlandırıcı aritmetik veri yolu kombinasyonel olarak tek saat çevrimi içinde sonuç üretecek biçimde tasarlanmıştır. Ancak MMIO arayüzü timing closure'ı garanti etmek için bir wait-state ekler.
İç pending registerı, acc_ready/mem_ready sinyalini mem_valid yükseldikten tam bir çevrim sonra üretir. Bu nedenle bir sample yazma veya feature okuma MMIO işlemi iki saat çevrimi alır.
Dolayısıyla “single-cycle arithmetic” ile “two-cycle memory transaction” farklı katmanlardaki gecikmelerdir ve birbirleriyle çelişmez.
Çarpansız Hızlandırıcı Donanım Karmaşıklığını Nasıl O(N)'e Düşürüyor?
Genel bir üç tap'li MAC filtresi, programlanabilir katsayılar için N×N bit çarpanlara ihtiyaç duyduğu için çarpan başına yaklaşık O(N²) kapı karmaşıklığı taşırken bu çalışmadaki sabit −1 ve 2 katsayıları yalnız negatif alma ve kablolu bit kaydırma ile uygulanır; geriye N ile doğrusal büyüyen toplayıcı ve negatif alma mantığı kaldığından kaynak önerilen filtre yolunu yaklaşık O(4N) FAE ile ifade etmektedir.
Full-Adder Equivalent ne demektir?
Kaynak donanım karmaşıklığını proses bağımsız biçimde karşılaştırmak için Full-Adder Equivalent (FAE) kavramını kullanır. Burada amaç gerçek transistor sayısını bire bir hesaplamak değil, farklı aritmetik yapıların gereken temel kombinasyonel hücre sayısının N ile nasıl ölçeklendiğini karşılaştırmaktır.
Standart N×N signed array multiplier için yaklaşık O(N²) FAE gerekir. Üç tap'li geleneksel MAC yapısında üç çarpan ve iki toplayıcı bulunduğundan kaynak yaklaşık:
\[ O(3N^2+2N) \]
karmaşıklığı kullanır.
Önerilen sabit çekirdekte ise:
- 3 adet N×N çarpan → 0,
- 1 adet bit kaydırma → kablolama, O(1),
- 2 negatif alma → O(N),
- 2 N-bit toplayıcı → O(N)
olduğu için yaklaşık:
\[ O(4N) \]
karmaşıklık elde edilir.
| Kaynak | MAC tabanlı | Önerilen yapı |
|---|---|---|
| N×N çarpma | 3 | 0 |
| Bit kaydırma | 0 | 1 — O(1), yalnız kablolama |
| Negatif alma | 0 | 2 — O(N) |
| N-bit toplayıcı | 2 | 2 |
| Yaklaşık kapı maliyeti | O(3N² + 2N) | O(4N) |
N = 12–16 bit biyomedikal ADC genişlikleri için kaynak tek bir signed array multiplier'ın yaklaşık 144–256 FAE, bütün önerilen özellik çıkarım veri yolunun ise yaklaşık 48–64 FAE gerektirdiğini belirtmektedir.
Bundan hareketle filtreleme aşamasında tahmini kombinasyonel kapı alanı azalması yaklaşık 3×–4× olarak verilir. Bu sayı doğrudan izole edilmiş fiziksel multiplier alanının silikon mikrografından ölçülmüş bir oran değil; FAE tabanlı mimari karmaşıklık tahminidir.
Yazılım–donanım iş bölümü
RISC-V çekirdeği sistem yönetimi, UART iletişimi, bellek erişimi, eşik programlama ve sonuçların host'a gönderilmesini yönetir. Hızlandırıcı ise üç örnekli filtreyi ve eşik kararını gerçekleştirir.
Bu ayrım, yalnız CPU üzerinde sürekli filtre hesaplamakla tamamen sabit işlevli bir ASIC yapmak arasında orta bir noktadır: program akışı yazılımla değiştirilebilirken tekrar eden aritmetik özel donanıma taşınmıştır.
Boot süreci
Reset sonrasında PicoRV32, 512 baytlık bootloader ROM'dan çalışmaya başlar. Bootloader UART baud-rate üreticisini nominal 100 MHz sistem saatinde 115.200 baud için yapılandırır ve host senkronizasyonunu bekler.
Host'tan uygulama binary'si geldiğinde kod 4 kB SRAM'e yazılır, checksum doğrulaması yapılır ve yürütme SRAM taban adresine aktarılır.
Post-silicon test sırasında kullanılan bare-metal firmware görüntüsü 460 bayt, yani 115 adet 32 bit word büyüklüğündedir.
MIT-BIH veri seti nasıl kullanıldı?
MIT-BIH Arrhythmia Database toplam 48 adet yarım saatlik ambulatuvar ECG kaydı içerir ve 360 Hz'de örneklenmiştir. Ancak bu çalışma bütün 48 kaydı kullanmamıştır.
Değerlendirme için beş kayıt seçilmiştir:
| Kayıt | Normal | Anormal | Toplam |
|---|---|---|---|
| 100 | 2238 | 1 | 2239 |
| 103 | 2082 | 0 | 2082 |
| 107 | 0 | 2137 | 2137 |
| 119 | 1543 | 444 | 1987 |
| 217 | 244 | 1704 | 1948 |
| Toplam | 6107 | 4286 | 10.393 |
Normal ve Anormal sınıfları nasıl oluşturuldu?
Kaynak, AAMI EC57 yaklaşımına göre MIT-BIH beat annotation sembollerini ikili sınıflara eşlemiştir.
| Hedef sınıf | MIT-BIH sembolleri |
|---|---|
| Normal | N, L, R, e, j |
| Anormal | V, E, / |
Diğer beat türleri değerlendirme dışında bırakılmıştır.
Her atım için kullanılan pencere
Her geçerli beat, kardiyolog tarafından işaretlenmiş R tepesine göre 144 örnekli bir pencereye ayrılmıştır. Pencere:
- R tepesinden önce 250 ms,
- R tepesinden sonra 150 ms
olmak üzere toplam 400 ms'lik bölgeyi kapsar. 360 Hz örnekleme frekansında bu süre 144 örneğe karşılık gelir.
Yazılım referansının sınıflandırma performansı
| Sınıf | Precision | Recall | F1-Score | Support |
|---|---|---|---|---|
| Normal | 0,9568 | 0,9749 | 0,9658 | 6107 |
| Anormal | 0,9633 | 0,9372 | 0,9501 | 4286 |
| Accuracy | — | — | 0,9594 | 10.393 |
| Makro ortalama | 0,9600 | 0,9561 | 0,9579 | 10.393 |
Precision, bir sınıf olarak işaretlenen örneklerin ne kadarının gerçekten o sınıfa ait olduğunu; recall, gerçek sınıf örneklerinin ne kadarının yakalandığını; F1-score ise precision ve recall arasındaki dengeyi ifade eder.
Kaynak bu metriklerin matematiksel formüllerini ayrıca vermediği için Verianla burada kaynak dışı numaralı denklem eklememiştir.
Yazılım referansının hata matrisi
| Gerçek / Tahmin | Normal tahmini | Anormal tahmini |
|---|---|---|
| Gerçek Normal | 5954 — %97,5 | 153 — %2,5 |
| Gerçek Anormal | 269 — %6,3 | 4017 — %93,7 |
En baskın hata modu anormal beat'in Normal olarak kaçırılmasıdır. Anormal beat'lerin %6,3'ü kaçırılırken Normal beat'lerin %2,5'i yanlış anomali olarak işaretlenmiştir.
Kaynak bunu tek sabit yüksek geçiren özellik + tek eşik kararının sınırlı ayırt ediciliğiyle ilişkilendirmektedir.
%95,88 Silikon Doğruluğu Neden Çapraz-Hasta Genellemesi Değildir?
Çünkü değerlendirmede her MIT-BIH kaydı için karar eşiği aynı hastanın kendi etiketleri kullanılarak ayrı ayrı kalibre edilmiştir; dolayısıyla sonuçlar bilinmeyen yeni hastaya sabit bir eşikle doğrudan genellenmiş performansı değil, hasta/kayıt-özel kalibrasyondan sonraki ikili Normal/Abnormal performansını ölçmektedir.
Kaynak hasta-özel eşik kalibrasyonunun kullanıldığını açıkça belirtmekte, ancak bu PDF içinde eşik T'nin tam sayısal değerlerini veya her kayıt için hangi optimizasyon kuralıyla seçildiğini ayrıntılı biçimde raporlamamaktadır. Bu bilgi Verianla tarafından tahmin edilmemiştir.
Çalışmanın Yöntemi ve Bulguları
Dört aşamalı doğrulama zinciri
Çalışma bir tek simülasyon sonucuna dayanmamaktadır. Doğrulama dört aşamalıdır:
- MIT-BIH üzerinde yazılım golden-model sınıflandırma doğrulaması,
- Artix-7 FPGA prototipleme ve hardware/software ortak çalışma doğrulaması,
- 180 nm CMOS RTL→GDSII fiziksel uygulama ve tape-out,
- paketlenmiş silikon üzerinde PCB, UART, elektriksel güç ve ECG doğruluk ölçümleri.
FPGA prototipi
ASIC tape-out'tan önce bütün SoC, Xilinx Artix-7 Arty A7-35T platformunda prototiplenmiştir. Hedef saat frekansı 100 MHz'dir.
| Kaynak | Kullanım | Cihaz kullanımı |
|---|---|---|
| LUT | 3227 | %15,5 |
| Flip-Flop | 1896 | %4,6 |
| BRAM | 2 | %4,0 |
| IOB | 8 | %3,8 |
| DSP | 0 | — |
MIT-BIH ECG pencereleri UART üzerinden FPGA prototipine aktarılmış ve donanım hızlandırıcısı test kayıtlarında yazılım golden model ile bit-exact eşdeğerlik göstermiştir.
FPGA literatür karşılaştırması neden dikkatle okunmalı?
| Çalışma | Platform | Algoritma / görev | LUT | FF | BRAM | DSP | Saat | Güç | Gecikme |
|---|---|---|---|---|---|---|---|---|---|
| Pan ve ark. 2022 | PYNQ-Z2 | 8 katmanlı CNN, EEG nöbet tespiti | 3411 | 2262 | 19 | 6 | 10 MHz | 118 mW | 0,137 ms/class |
| Melo ve ark. 2022 | Artix-7 | 1-bit BCNN, ECG biyometrik kimlik | 6246 | 5454 | 80 | 4 | 100 MHz | Raporlanmamış | 0,205 ms |
| Kulkarni ve ark. 2025 | Zynq-7000 | CNN + nearest-neighbor, 4 sınıflı ECG görüntü sınıflandırma | 269 | 137 | 5 | 0 | Açık belirtilmemiş | 106 mW | Raporlanmamış |
| Pizarro ve ark. 2026 | Artix-7 | MAC convolution accelerator | 10.911 | 5723 | 13 | 7 | 50 MHz | 286 mW | 0,55–1,52 ms/conv |
| Bu çalışma | Artix-7 | Sabit 3-tap FIR/Laplasyen, ikili ECG tepe/anomali tespiti | 3227 | 1896 | 2 | 0 | 100 MHz | 75 mW | 15,9 ms |
Önerilen sistemin 15,9 ms FPGA gecikmesi, yalnız filtre veri yolunun gecikmesi değildir. Kaynak bunun host UART örnek aktarımı, MMIO senkronizasyonu, firmware komut yürütme ve sınıflandırma okumasını içeren uçtan uca sistem süresi olduğunu açıkça belirtir.
Diğer çalışmalar farklı görev, algoritma ve gecikme tanımları kullandığından bu tablodaki süreler doğrudan “en hızlı algoritma” sıralaması olarak okunmamalıdır.
ASIC fiziksel tasarım akışı
FPGA doğrulamasından sonra aynı RTL mimarisi ticari 180 nm CMOS sürecinde tam fiziksel ASIC akışına aktarılmıştır.
Kullanılan EDA araçları
| Aşama | Araç | Görev |
|---|---|---|
| Logic synthesis | Cadence Genus | RTL'yi 180 nm standard-cell library'ye eşlemek |
| Place-and-route | Cadence Innovus | Floorplan, güç ağı, yerleşim, CTS ve routing |
| Logic equivalence | Cadence Conformal LEC | RTL, sentez ve post-PnR netlist eşdeğerliğini doğrulamak |
| RC extraction | Cadence Quantus | Parazitik direnç ve kapasitansları .dspf biçiminde çıkarmak |
| Post-layout SPICE | FineSim | Parazitik yüklü zamanlama davranışını doğrulamak |
Fiziksel yonga sonuçları
| Parametre | Değer |
|---|---|
| CMOS prosesi | 180 nm |
| Nominal çekirdek VDD | 1,8 V |
| I/O pad beslemesi | 3,3 V |
| Aktif çekirdek alanı | 0,936 mm² |
| Standard-cell instance | 9373 |
| Çekirdek yoğunluğu | %75,2 |
| Hedef frekans | 100 MHz |
| Post-RC elde edilen frekans | 101 MHz |
| Post-layout simülasyon gücü | 29,89 mW @ 100 MHz, 1,8 V |
| Gerçek silikon aktif güç | 25,2 mW @ 100 MHz, 1,8 V |
| Paket | QFP160PIN / 0,65 mm |
| DRC / LVS | PASS |
| Logic equivalence | Equivalent |
Post-layout tahmin edilen 29,89 mW ile gerçek silikon üzerinde ölçülen 25,2 mW birbirinden ayrılmalıdır. Birincisi fiziksel tasarım sonrası simülasyon, ikincisi üretilmiş yongadaki ölçümdür.
Post-silicon test sistemi
Üretilen die QFP-160 paketlenmiş ve özel bir PCB üzerine yerleştirilmiştir. PCB; güç rayları, clock/reset, UART ve GPIO/debug LED bağlantılarını dışarı çıkarmaktadır.
Host bilgisayarda çalışan özel Python 3.10.12 test yazılımı yongayla 115.200 baud UART üzerinden haberleşmiştir.
Test yazılımı kaynakta dört çalışma modu içerir:
- firmware programlama + canlı ECG streaming,
- GPIO/LED toggle testi,
- UART logging,
- diagnostic reset.
400 örnekli fiziksel fonksiyon testi
İlk silikon fonksiyon testinde yongaya 400 örnekli bir ECG tanı penceresi gönderilmiştir. İlk 200 örnek normal beat, ikinci 200 örnek anormal beat bölgesidir.
Kaynakta ilk normal bölgede yanlış pozitif oluşmadığı, anormal bölgedeki keskin R tepesinden sliding-window geçerken ise hızlandırıcının art arda iki pozitif flag ürettiği ölçülmüştür.
Bu gözlem gerçek ölçülmüş ECG dalga şekline dayanır. Verianla, kaynak raster grafiğinin ham örnek değerleri tablolaştırılmadığı için aynı dalga formunu yapay kesinlikle yeniden üretmemektedir.
Gerçek silikon ile yazılım doğruluğu
| Kayıt | Beat | Silikon doğru | Silikon doğruluk | Yazılım doğru | Yazılım doğruluk | Doğru karar farkı |
|---|---|---|---|---|---|---|
| 100 | 2239 | 2192 | %97,90 | 2194 | %97,99 | 2 |
| 103 | 2082 | 2038 | %97,89 | 2040 | %97,98 | 2 |
| 107 | 2137 | 2083 | %97,47 | 2084 | %97,52 | 1 |
| 119 | 1987 | 1940 | %97,63 | 1941 | %97,68 | 1 |
| 217 | 1948 | 1712 | %87,89 | 1712 | %87,89 | 0 |
| Toplam | 10.393 | 9965 | %95,88 | 9971 | %95,94 | 6 |
Silikon ile kayan noktalı yazılım referansı arasındaki toplam fark yalnız altı beat'tir. Kaynak bu farkın hızlandırıcı aritmetiğindeki yuvarlamadan kaynaklanmadığını belirtmektedir; veri yolu N+2 bite genişletildiği için iç filtre aritmetiğinde bit kaybı yoktur.
Farkın nedeni, yazılımın floating-point örneklerle, yonganın ise sabit noktalı nicemlenmiş girişler ve nicemlenmiş eşikle çalışmasıdır. Eşik sınırına çok yakın beat'lerde bu küçük temsil farkı ikili kararı değiştirebilir.
Kayıt 217 neden daha düşük doğruluk verdi?
Kayıt 217'de silikon doğruluğu %87,89'a düşmüştür. Bu kayıt tek başına toplam 428 silikon hatasının 236'sını, yaklaşık %55'ini oluşturur.
Kaynak bunu kaydın karışık beat kompozisyonuyla ve tek bir yüksek geçiren özellik üzerindeki tek eşiğin bazı morfolojileri Normal sınıftan güvenilir biçimde ayıramamasıyla ilişkilendirmektedir.
Bu bulgu sabit Laplasyen hızlandırıcının güçlü olduğu görevin sınırını da gösterir: sistem QRS/R-tepesi çevresindeki yüksek zamansal gradyanları çok düşük donanım karmaşıklığıyla yakalar; ancak bir CNN gibi çok sayıda öğrenilmiş özellik kullanmaz.
Güç ölçümleri
Güç 100 MHz'de VDD = 1,0–2,0 V aralığında aktif, idle ve sleep durumları için fiziksel silikon üzerinde ölçülmüştür.
Kaynağın metin içinde açıkça verdiği bazı ölçüm noktaları:
| Koşul | Aktif | Idle | Sleep |
|---|---|---|---|
| 1,0 V, 100 MHz | yaklaşık 4,05 mW | yaklaşık 4,01 mW | 44 nW / 44 nA |
| 1,8 V, 100 MHz | 25,2 mW ölçülmüş | Kaynak metinde kesin değer verilmemiş | Kaynak metinde kesin değer verilmemiş |
| 1,9 V, 100 MHz | yaklaşık 30,21 mW | yaklaşık 21,09 mW | Aktif/idle'dan yaklaşık beş mertebe düşük |
Kaynak, aktif ve idle gücün gerilim yükseldikçe genel olarak arttığını, 1,9 V civarında tepe yaptıktan sonra 2,0 V noktasında hafif azalma gösterdiğini belirtmektedir.
Kaynağın tam güç eğrisinin bütün sayısal noktaları tablo halinde verilmediği için Verianla grafiğin ara noktalarını görselden okuyup kesin veri gibi yeniden üretmemiştir.
178,9 µJ aktif enerji nasıl elde ediliyor?
Kaynak 400 örnekli pencere için uçtan uca silikon işleme süresini 7,1 ms olarak verir. Ölçülmüş aktif güç 25,2 mW olduğuna göre enerji:
\[ E=P\times t \]
temel ilişkisiyle düşünüldüğünde:
\[ 25.2\;mW\times7.1\;ms \approx178.9\;\mu J \]
olur.
Bu \(E=P\times t\) ifadesi kaynakta ayrıca numaralandırılmış bir denklem değildir; burada kaynağın raporladığı 178,9 µJ değerinin fiziksel anlamını öğretmek için kullanılan temel enerji ilişkisidir.
CR2032 ile 25 günlük çalışma gerçek batarya testi mi?
Hayır. Kaynak bunu varsayımsal duty-cycled kullanım senaryosu olarak sunmaktadır.
Senaryoda SoC'nin çoğu zaman 44 nA'lık derin uykuda kaldığı, yalnız periyodik olarak tamponlanmış ECG pencerelerini işlemek için uyandığı ve ortalama gücün yaklaşık 1 mW mertebesine düştüğü varsayılır.
220 mAh, 3,0 V ve yaklaşık 2376 J enerjiye sahip standart bir CR2032 hücre için kaynak bu varsayımla 600 saatten fazla, yaklaşık 25 günlük izleme süresi öngörmektedir.
Bu sayı fiziksel CR2032 ile yapılmış uzun dönem pil boşalma deneyi değildir.
180 nm ASIC literatür karşılaştırması
| Kriter | Hoyer ve ark. 2023 | Lee ve ark. 2021 | Bu çalışma |
|---|---|---|---|
| Durum | Post-synthesis | Fabrike ASIC | Fabrike ASIC |
| Uygulama | Atrial fibrilasyon tespiti | EEG epileptik nöbet tespiti | ECG ikili tepe/anomali tespiti |
| Algoritma | Shallow MLP | 11 katmanlı 1D-CNN | Sabit 3-tap FIR/Laplasyen |
| Sistem | Extended AIRISC | Harici host CPU'lu ASIC coprocessor | RISC-V + hızlandırıcı SoC |
| Alan | 0,951 mm² | 2,18 mm² | 0,936 mm² |
| Frekans | 30 MHz | 1 MHz | 100 MHz |
| Güç | Raporlanmamış | 0,102 mW | 25,2 mW |
| Enerji / clock cycle | Raporlanmamış | 0,075 nJ/cycle — kaynak makalede türetilmiş | 0,25 nJ/cycle |
| SRAM | 64 kB | 6 kB | 4 kB |
| Gecikme | 0,286–0,403 ms — simülasyon kökenli | 12 ms | 7,1 ms |
Bu karşılaştırma “bu çalışma diğerlerinin tamamından daha iyidir” biçiminde okunmamalıdır. Kaynak özellikle algoritmaların ve görev kapsamlarının farklı olduğunu belirtmektedir.
Lee ve arkadaşlarının 1D-CNN yongası 0,102 mW ile çok daha düşük aktif güç tüketirken bu çalışmanın 25,2 mW'lık SoC'si daha yüksek saat frekansı ve daha kısa mutlak sistem gecikmesine yönelmiştir.
Hoyer ve arkadaşlarının daha kısa gecikmesi ise gerçek silikon ölçümü değil, simüle edilmiş cycle count'lar üzerinden türetilmiştir.
Çalışmanın desteklediği sonuçlar
- K = [−1, 2, −1] sabit Laplasyen çekirdeği, ECG QRS/R-tepesi çevresindeki hızlı zamansal değişimleri düşük frekanslı temel çizgi bileşenlerine göre vurgulayabilmektedir.
- Sabit katsayılar sayesinde donanım multiplierları kaldırılabilir ve filtre veri yolu yaklaşık O(N) kombinasyonel karmaşıklığa indirilebilir.
- PicoRV32 ile özel hızlandırıcı standart MMIO üzerinden aynı SoC içinde birleştirilebilmektedir.
- FPGA prototipi yazılım golden modeliyle bit-exact özellik çıkarımı göstermiştir.
- 180 nm CMOS'ta fiziksel yonga üretimi, DRC/LVS, logic equivalence ve post-layout timing closure tamamlanmıştır.
- Üretilen silikon gerçek MIT-BIH ECG kayıtlarında UART üzerinden çalıştırılmıştır.
- Hasta/kayıt-özel eşik kalibrasyonuyla beş kayıtta 10.393 beat üzerinde %95,88 silikon doğruluğu elde edilmiştir.
- Yazılım ile silikon arasında yalnız altı beat farkı vardır.
- 1,8 V ve 100 MHz'de 25,2 mW aktif güç ve 1,0 V derin uykuda 44 nW kaçak ölçülmüştür.
Çalışmanın desteklemediği sonuçlar
Bu çalışma, %95,88 doğruluğun görülmemiş hastalarda aynı şekilde elde edileceğini kanıtlamaz. Her kaydın karar eşiği kendi etiketlerine göre kalibre edilmiştir.
Çalışma bütün aritmi türlerini sınıflandıran çok sınıflı bir tanı sistemi değildir. Kullanılan etiketleme Normal ve belirli Anormal beat grupları şeklinde ikilidir; diğer beat türleri değerlendirme dışındadır.
Çalışma ham ECG'deki bütün gürültü ve hareket artefaktlarını çözmemektedir. Kaynak giriş sinyalinin standart ön işlemden geçtiğini varsaymaktadır.
Çalışma ileriye dönük klinik hasta çalışması değildir. MIT-BIH veri tabanı kayıtları yonga üzerinde yeniden oynatılarak laboratuvar ortamında test edilmiştir.
Çalışma genel amaçlı CNN'nin bütün görevlerde gereksiz olduğunu göstermez. Kaynak, sabit Laplasyen yapının belirli ve iyi tanımlanmış QRS/R-tepesi morfolojisi görevi için uygun olduğunu, trainable CNN kadar genel olmadığını vurgulamaktadır.
Başlıca sınırlılıklar
- Yalnız beş MIT-BIH kaydı ve 10.393 beat değerlendirilmiştir.
- Eşik her kayıt için kendi etiketleriyle kalibre edilmiştir.
- Eşik seçim prosedürünün ayrıntılı optimizasyon algoritması ve kayıt başına T değerleri PDF'de raporlanmamıştır.
- Diğer MIT-BIH beat türleri ikili değerlendirmeye dahil edilmemiştir.
- Sabit K = [−1, 2, −1] çekirdeği donanım değiştirilmeden farklı morfolojik olmayan aritmi sınıflarına adapte edilemez.
- Tek eşik özellikle Kayıt 217 gibi karışık morfoloji içeren kayıtlarda sınırlı ayırt edicilik göstermiştir.
- Ham yüksek frekanslı EMG gürültüsü ve hareket artefaktları için standart ön işleme varsayılmıştır.
- Aktif 25,2 mW güç yalnız hızlandırıcıya değil CPU, SRAM ve UART dahil bütün SoC'ye aittir.
- CR2032 kullanım süresi gerçek uzun dönem batarya testi değil görev çevrimli güç varsayımına dayalı senaryodur.
Gelecek çalışma planları
Kaynakta gelecekte sisteme düşük güçlü dijital ön filtreleme ve adaptif eşik mekanizmalarının eklenmesi planlanmaktadır. Amaç ham ve gürültülü klinik ortamlara daha doğrudan yaklaşmaktır.
Ayrıca Dynamic Frequency Scaling (DFS) için bellek-eşlemeli programlanabilir clock divider ve yonga üzerinde düşük düşümlü regülatör (LDO) eklenmesi önerilmektedir.
Bir diğer hedef, sabit üç tap yapıyı yerel shift-and-add işlem elemanları kullanan yapılandırılabilir N-tap hızlandırıcıya genişletmek ve çarpansız tasarım felsefesini korurken daha geniş anomali sınıflarına yaklaşmaktır.
Bu özellikler mevcut yongada gerçekleştirilmiş sonuçlar değil, makalenin gelecek çalışma önerileridir.
Sonucun doğru mühendislik anlamı
Bu çalışmanın temel başarısı, ECG sınıflandırmada en karmaşık algoritmayı kullanmak değil, belirli bir morfolojik özelliğin matematiksel yapısından yararlanarak özel donanımı son derece basitleştirmektir.
QRS/R-tepesi çevresindeki keskin ikinci farkın sabit Laplasyen filtresiyle çıkarılabilmesi, genel amaçlı çarpanların ve büyük MAC dizilerinin kaldırılmasını mümkün kılar. PicoRV32 ise bu özel veri yolunun etrafında programlanabilir sistem kontrolü sağlar.
Sonuçta çalışma, RISC-V programlanabilirliği ile çok basit domain-specific hızlandırmanın aynı SoC içinde birleştirilmesinin gerçek silikon üzerinde uygulanabilir olduğunu göstermektedir.
Bunun karşılığında sistemin algoritmik genelliği sınırlıdır. Bu mimari, belirli bir biyosinyal özelliği için düşük alan ve deterministik işlem yolunu tercih eder; çok katmanlı öğrenilebilir ağların sunduğu geniş sınıflandırma esnekliğini sağlamaz.
Kaynak ve Yöntem Notu
Özgün başlık: A Low-Power PicoRV32-Based SoC with an Integrated Hardware Accelerator for Real-Time ECG R-Peak Anomaly Detection in 180-nm CMOS
Yazarlar: Phu-Cuong Le; Duc-Hung Le; Cong-Kha Pham.
Yazar sırası: Kaynaktaki sıra aynen korunmuştur.
Eş katkı: Kaynakta eş birinci yazarlık veya eş katkı bildirimi bulunmamaktadır.
Sorumlu yazarlar: Phu-Cuong Le ve Cong-Kha Pham.
Kurum 1: Department of Computer and Network Engineering, The University of Electro-Communications (UEC), Tokyo, Japan.
Kurum 2: Institute of System Integration, Le Quy Don Technical University (LQDTU), Hanoi, Vietnam.
Kurum 3: Faculty of Electronics and Telecommunications, The University of Science, Vietnam National University Ho Chi Minh City, Ho Chi Minh City, Vietnam.
Dergi: Chips.
Yayınevi: MDPI, Basel, Switzerland.
Cilt / sayı / makale numarası: 5 / 4 / 34.
DOI: 10.3390/chips5040034.
Alınma tarihi: 31 Ağustos 2026.
Revizyon tarihi: 28 Eylül 2026.
Kabul tarihi: 30 Eylül 2026.
Yayın tarihi: 5 Ekim 2026.
Kaynak türü: Özgün araştırma makalesi; algoritma analizi, FPGA prototipi, fiziksel ASIC uygulaması ve post-silicon laboratuvar doğrulaması içerir.
Hakemlik durumu: Chips, uluslararası hakemli ve açık erişimli bilimsel dergidir.
Resmî yayın: MDPI, Chips; DOI 10.3390/chips5040034.
Sürüm notu: Yüklenen kaynak 20 sayfalık yayımlanmış makale PDF'sidir. MDPI web kaydı mevcut kontrolde ayrıca “early access version” uyarısı göstermektedir; bibliyografik kimlik bilgileri PDF ile eşleşmektedir.
Lisans: Creative Commons Attribution — CC BY.
Ana yöntem: Sabit K = [−1, 2, −1] ayrık Laplasyen/FIR özellik çıkarımı; programlanabilir eşik; PicoRV32 RV32I MMIO kontrolü; FPGA prototipi; 180 nm CMOS fiziksel tasarım; post-silicon ECG ve güç ölçümleri.
Veri seti: MIT-BIH Arrhythmia Database; değerlendirmede kayıtlar 100, 103, 107, 119 ve 217 kullanılmıştır.
Örnek sayısı: 10.393 beat; 6107 Normal ve 4286 Anormal.
Örnekleme frekansı: 360 Hz.
Beat penceresi: 144 örnek; R tepesinden 250 ms önce ve 150 ms sonra.
Sınıf eşlemesi: Normal = N, L, R, e, j; Anormal = V, E, /. Diğer beat tipleri dışlanmıştır.
Eşik kalibrasyonu: Hasta/kayıt bazında yapılmıştır. Kaynak kesin eşik değerlerini veya ayrıntılı optimizasyon prosedürünü raporlamamaktadır.
FPGA: Xilinx Artix-7, Arty A7-35T; hedef 100 MHz.
ASIC prosesi: Ticari 180 nm CMOS.
Aktif çekirdek alanı: 0,936 mm².
Standard-cell sayısı: 9373.
Yerleşim yoğunluğu: %75,2.
Core supply: nominal 1,8 V.
I/O supply: 3,3 V.
Paket: QFP-160.
Ölçülmüş aktif güç: 25,2 mW @ 1,8 V, 100 MHz.
Ölçülmüş uyku kaçağı: 44 nA / 44 nW @ 1,0 V.
Ölçülmüş silikon doğruluğu: %95,88 — 9965 / 10.393 beat.
Yazılım referansı: %95,94 — 9971 / 10.393 beat.
Yazılım–silikon farkı: 6 beat, 0,06 yüzde puan.
Uçtan uca silikon pencere süresi: 7,1 ms / 400 örnekli pencere.
Aktif pencere enerjisi: yaklaşık 178,9 µJ.
Finansman: Japan Science and Technology Agency (JST), Networked Exchange, United Strength for Stronger Partnerships between Japan and ASEAN (NEXUS), Grant JPMJNX25D4.
Acknowledgments içindeki ek destek: Kaynak ayrıca National Foundation for Science and Technology Development (NAFOSTED), Vietnam, Grant NĐT/JP/26/01 desteğini teşekkür bölümünde belirtmektedir.
Veri erişilebilirliği: Raporlanan sonuçları destekleyen verilerin makul talep üzerine sorumlu yazardan alınabileceği belirtilmiştir.
Kurumsal etik kurul: Uygulanabilir değil.
Bilgilendirilmiş onam: Uygulanabilir değil.
Çıkar çatışması: Yazarlar çıkar çatışması olmadığını beyan etmiştir.
Yazar katkıları: Kavramsallaştırma: Phu-Cuong Le ve Cong-Kha Pham. Yöntem: Phu-Cuong Le. Yazılım: Phu-Cuong Le. Doğrulama: Phu-Cuong Le, Duc-Hung Le ve Cong-Kha Pham. Biçimsel analiz: Phu-Cuong Le. Araştırma: Phu-Cuong Le ve Duc-Hung Le. Kaynaklar: Cong-Kha Pham. Veri düzenleme: Phu-Cuong Le. İlk taslak: Phu-Cuong Le. Gözden geçirme ve düzenleme: Phu-Cuong Le, Duc-Hung Le ve Cong-Kha Pham. Görselleştirme: Phu-Cuong Le. Süpervizyon ve proje yönetimi: Cong-Kha Pham. Finansman temini: Cong-Kha Pham.
Temel yorum sınırı: %95,88 doğruluk hasta/kayıt-özel kalibrasyonla elde edilmiştir ve çapraz-hasta klinik genelleme sonucu değildir. Sistem standart ön işleme tabi ECG girişi varsayar ve sabit Laplasyen + tek eşik yapısı bütün aritmi tiplerini kapsamaz.
Bir yorum bırakın
E-posta adresiniz yayınlanmayacaktır. Gerekli alanlar * ile işaretlenmiştir