חדשות היום

מאיצי חומרה מגבירים את ביצועי מעבדי ה- SHARC דור רביעי

המעבד  SHARC® ADSP-2146x של Analog Devices כולל מאיצי חומרה לצורכי מימוש שלוש פעולות עיבוד אותות המשמשות בקנה-מידה רחב:
FIR (finite impulse response)  IIR (infinite impulse response)  FFT (fast fourier transform). המאיצים משחררים את הליבה לביצוע משימות אחרות  והם בעלי פוטנציאל של הגדלה ביותר מכפול את תפוקת המעבד.
קיימות גרסאות שונות של משפחת ה-2146x חלקן דלות הספק  שצורכות רק 363 מילי-ואט בטמפרטורת חדר .

מאמר זה מציג את המאיצים תוך שימוש כדוגמה ביישומם במערכות שמע של הדור הבא.
מדוע מאיצים בחומרה?
למסנני ה-FIR, מסנני ה-IIR ופעולות ה-FFT הנפוצות למדי בעיבוד אותות דיגיטליים מבנה סדיר המאפשר מימוש ישיר בחומרה – במיוחד מאיצי חומרה. מאיצים אלה הם התקנים היקפיים בעלי פונקציה בנקודה קבועה המתוכננים לבצע בקביעות משימה ממוחשבת יחידה. המאיצים   משחררים את הליבה  לביצוע משימות אחרות.

השימוש במאיצי חומרה מאפשר דרך חסכונית להעלות את כוח המחשוב הכללי של מעבד מאחר שמתכנן המערכת זוכה לגמישות של מעבד לשימוש כללי בשילוב עם היתרון המחשבי של חומרה מיוחדת. לכן, מאיצים כאלה הם נכס בעל ערך במילוי הדרישות של מערכות יותר ויותר מורכבות  בתחומי יישומים רבים. אחד מהם הוא מערכות השמע, שם מספר הערוצים נמצא בעלייה. מערכות ביתיות עברו מ-5.1 ערוצים ל-6.1 ועתה ל-7.1 ערוצים. מגברי רכב איכותיים משתמשים לרוב ב-12 רמקולים או יותר כדי להטביע את המאזין בצלילים.
יתר על כן, חומרים של מקור שמע זמינים עתה בצורות של high definition (HD) כאשר המפענחים שלהם מנצלים עד תום את משאבי המערכת.
בנוסף, אלגוריתמי ה- HD מספקים תוכן בקצב דגימה גבוה יותר. בעבר, קצב הדגימה המרבי עלה לעתים רחוקות מעל 49 קילו-הרץ. עם אלגוריתמי ה-HD, קצב הדגימה הוא לרוב 96 קילו-הרץ, ובמקרים אחדים, עולה עד כדי 192 קילו-הרץ.
כדי להבין יותר טוב כיצד גדלות דרישות המחשוב, חשוב על מקלטי הציוד הביתי החדשניים המכילים אלגוריתמים של שוויון חדרים. אלגוריתמים אלה מפצים עבור השינויים בתגובת הדרייבר ומיקום הרמקולים. האלגוריתמים מנתחים ראשית את החדר בעזרת מיקרופון ופונקציית מעבר מקוונת. המדידות בנקודות שונות משולבות בצורה חכמה, ולאחר מכן מתכננים מסנן מפצה עבור כל רמקול.

האלגוריתמים של שוויון החדר היותר מדויקים משתמשים במסנני FIR כדי לתקן את ההיענות בכל תחום התדרים. אורך המסנן הדרוש יחסי ישר לקצב הדגימה, ומסננים ארוכים יותר דרושים עבור הבקרה המדויקת של תדרים נמוכים. אורכי מסנן של 256 נקודות רגילים ב-48 קילו-הרץ, בעוד כדי להשיג אותה רזולוציה בתדר 96 קילו-הרץ דרוש מסנן באורך 512 נקודות. ההכפלה הזו של קצב הדגימה ואורך המסנן מביאה לעלייה פי ארבעה בכמות המחשוב הדרוש.

המאיצים ב-SHARC ADSP-2146x
למעבדי ה-SHARC של Analog Devices היסטוריה ארוכה הכוללת פונקציונליות של עיבוד אות מתוחכם במגוון יישומים. המעבדים עשירי-הליבה והציוד ההיקפי הפכו לבחירה הגיונית עבור מפתחי המוצרים. המעבד SHARC ADSP-2146x של Analog Devices אשר הושק לאחרונה, מחזק מקום מוביל זה עם מהירות שעון גבוהה יותר (450 מגה-הרץ) וזיכרון על-שבב מורחב (5Mb).
בנוסף, למעבד שורה של מאיצי חומרה למימוש פעולות רגילות של עיבוד אות: מסנני FIR, מסנני IIR ו-FFTs. פעולות אלה הן הבסיס של מערכות תקשורת, התקנים רפואיים, מוצרי צריכה ויישומי מדידה ובקרה תעשייתית. מאיצים אלה משלימים את ממיר קצב הדגימה הכלול, אשר הוכנס למעבד SHARC ADSP-2136x, ויכול גם להיחשב כמאיץ בחומרה.

ארכיטקטורת המאיץ
לכל שלושת המאיצים של ה-SHARC ADSP-2146x תכנון דומה, העושה את מאיץ ה-FIR המוצג להלן לדוגמה טובה של ארכיטקטורת מאיץ החומרה.
למאיץ ה-FIR  הרכיבים הבאים:
•מערך של אוגרי בקרה – המעצב את פעולת המאיץ.
בקר DMA –המעביר את הנתונים בין הזיכרון הראשי והזיכרון המקומי של המאיץ. יכול לשמש גם לעיצוב אוגרי הבקרה.
•שתי יחידות של זיכרון מקומי –לאגירת המקדמים ומשתני המצב (או זיכרון ההשהיה) והמקטינות את רוחב הפס לזיכרון הראשי.
•יחידת מחשוב – מכילה פעולות אריתמטיות המתאימת למאיץ. ליחידת המחשוב של ה-FIR ארבעה MACs מקביליים.
פעולת המאיץ היא אוטומטית תוך שימוש ב-DMA משורשר. מאיץ ה-FIR מתקדם לרוב בשלבים הבאים:
1.העבר את נתוני המקדמים עבור ערוץ זה מהזיכרון הפנימי אל אכסון מקדם המקומי של המאיץ.
2.העמס את משתני המצב עבור ערוץ זה מהזיכרון הפנימי לאכסון המשתנה במצב המאיץ. זה כולל את דגימת המבוא הראשונה.
3.חשב את דגימת המוצא תוך שימוש בארבע יחידות ה-MAC.
4.אכסן את התוצאה.
5.אם נשארו דגימות לעיבוד, טול את דגימת המבוא הבאה וכתוב אותה אל אכסון משתנה המצב.
6.חזור על צעדים 3 עד 5 עד שכל דגימות המוצא בערוץ מחושבות.
7.חזור על צעדים 1 עד 6 עבור כל ערוצי המבוא.
לליבת ה-ADSP-2146x קצב שעון מרבי של 450 מגה-הרץ. על-ידי שימוש ב-SIMD (single-instruction multiple data), הליבה יכולה לבצע שתי פעולות MAC (multiply-accumulate) במחזור שעון בקצב שיא של 900 MMAC/sec. המאיץ בהשוואה, פועל בקצב השעון ההיקפי של SHARC שהוא 225 מגה-הרץ. על-ידי שימוש בארבע היחידות MAC המיועדות  שלו, מאיץ ה-FIR משיג תפוקת-שיא תאורטית של 900 MMAC/sec. קיימת תקורה מסוימת בעיצוב אוגרי הבקרה של מאיץ ה-FIR והעברת הנתונים אל תוך ומחוץ לזיכרון המקומי. המספר הכולל של מחזורי שעון היקפי הדרושים כדי לממש מסנן FIR מסוים ניתן על-ידי הנוסחה

כאשר N הוא מספר מגעי המסנן ו-B הוא גודל הגוש.
ספירת המחזור ניתנת לפירוק בהמשך ל:
=49 תיחול גוש בקרת ההעברה של ה-DMA
N4=העמסת ערכי המקדם והמצב (קו השהיה) בהנחה של שני מחזורים בהעמסה
=מחזורים כדי לחשב דגימת מוצא אחת באורך N מסנן FIR

השימוש המעשי במאיצים
יש לתכנן תוכנת יישומים כדי להפיק את המרב ממאיצי החומרה. זכור שיש לעצב את המאיצים לפעולה במקביל עם ה-CPU הראשי מאחר שאין תועלת אם ה-CPU הראשי מושבת כאשר הוא ממתין למאיצים לסיים.

המאיצים הם לרוב חלק משרשרת אותות גדולה יותר הרצה בתוך סביבת זמן-האמת. הממשק אל המאיצים דורש נתוני מבוא ומוצא בעלי חוצץ כפול (double buffered), והמתכנן חייב לזכור שהמאיצים מוסיפים גוש של כמיסות (latency).
נניח מערכת בידור ביתית בעלת 7.1 ערוצי שמע ב-96 קילו-הרץ הפועלת בגודל גוש של 32 דגימות. נניח ששיוויון החדר מושג על-ידי שמונה מסנני FIR, כל אחד באורך 512 נקודות. אם CPU הליבה יידרש לבצע את הסינון, זה יגזול לפחות 96 kHz x 8 x 512=393 MMAC/sec. או 44% ממעבד SHARC של 450 מגה-הרץ. עיבוד FIR זה מהווה חלק משמעותי של המחשוב הכולל, ובמזל ניתן להורידו אל המאיץ. המבואות והמוצאים של מסנני ה-FIR הם בעלי חוצץ כפול ומאפשרים למאיץ לפעול במקביל עם יתר שרשרת אות השמע. החציצה הכפולה מוסיפה 32 דגימות השהיה בתהליך, שהן 330 מיקרו-שניות סבירות ב-96 קילו-הרץ. תוך שימוש בנוסחה הקודמת, המאיץ דורש 50,056 מחזורים היקפיים כדי להשלים את הפעולה. בקצב של 225 מגה-הרץ, זה נותן 223 מיקרו-שניות, בתוך זמן הגוש של 333 מיקרו-שניות.

סיכום
מאיצי החומרה בתוך המעבד מהדור הבא SHARC ADSP-214x מהווים התקדמות משמעותית בכוח העיבוד הכולל. המאיצים מורידים פעולות עיבור אותות משותפים  – מסנני FIR, מסנני IIR ו-FFT מהמעבד הראשי, ומאפשרים לו להתמקד במשימות אחרות. גישה חסכונית זו מעלה פי שניים או יותר את תפוקת המחשוב של המעבד. הליבה והמאיצים הם לשימוש כללי ומתאימים יפה למגוון משימות של עיבוד אות.

*הכתבה נמסרה באדיבות פיניקס טכנולוגיות

תגובות סגורות