मेरे पास एक सर्किट है जहां प्रत्येक घड़ी चक्र पर, एन 32-बिट इनपुट की गणना की जाती है। मेरे पास एक द्विआधारी ऑपरेशन है जो दो 32-बिट इनपुट लेता है और एक 32-बिट आउटपुट उत्पन्न करता है। यह ऑपरेशन सहयोगी है और मैं इसे 32-बिट आउटपुट प्राप्त करने के लिए पूरे एन 32-बिट इनपुट पर लागू करना चाहता हूं। वर्तमान में, मैं संचालन के एक पाइपलाइन बाइनरी पेड़ को लागू करके इसे प्राप्त कर रहा हूं।बैंडविड्थ की कीमत पर 2 से कम के कारक पर एफपीजीए पर द्विआधारी संचालन के पेड़ की अंतरिक्ष आवश्यकता को कम करना संभव है?
एक ठोस उदाहरण के लिए, मान एन = 4 और मैं आदानों {एक, ख, ग, घ} है तो मैं निम्नलिखित करना होगा:
a op b => reg1
c op d => reg2
reg1 op reg2 => result
जब पेड़ में एक मंच से विभाज्य नहीं है 2, मैं एक डमी ऑपरेशन डालता हूं जो एक ही विलंबता के साथ केवल 1 इनपुट एक उपज 1 आउटपुट लेता है।
मेरे पास यह मुद्दा है कि मैं कुछ इनपुट एन 9 {25, 49, 81, 121} से संबंधित हूं। एन, 121 के सबसे बड़े आकार में मेरे एफपीजीए कपड़े में 110% लूट की आवश्यकता होती है जबकि अन्य सभी आकार आसानी से फिट होते हैं। इन बाइनरी परिचालनों का पेड़ मेरे डिजाइन में अब तक का सबसे बड़ा उपभोक्ता है।
मुझे पता है कि मैं अपने बोर्ड पर रहने वाले ओप सर्किटों की संख्या को कम करके और उनके इनपुट को मल्टीप्लेक्स करने से लगभग आधा तक कम कर सकता हूं। दुर्भाग्य से, इसका मतलब केवल हर दूसरे घड़ी चक्र का परिणाम हो रहा है और बैंडविड्थ को रोक रहा है।
क्योंकि पूरे पेड़ को बोर्ड ऑफ़र की तुलना में केवल ~ 10% अधिक संसाधनों की आवश्यकता होती है, बैंडविड्थ में 50% की कमी हिट की बहुत महत्वपूर्ण लगती है। क्या कोई वास्तुकला है जहां मैं बैंडविड्थ में अच्छी तरह से बढ़ी हुई कमी के लिए आकार में अधिक बढ़िया अनाज की कमी का व्यापार कर सकता हूं?
कैसे जटिल अपने द्विआधारी operstion है? क्या आपका पेड़ उदाहरण के लिए डबल गति पर चला सकता है? यदि ऐसा है, तो आप 2x F_input पर संबंधित घड़ी का उपयोग कर सकते हैं, जो बैंडविड्थ में आपके नुकसान को क्षतिपूर्ति करता है। – Paebbels
क्या उत्तर में से एक ने आपकी समस्या का समाधान किया? यदि ऐसा है, तो कृपया उत्तर के रूप में चिह्नित करें। – Paebbels