نوع فایل: word
قابل ویرایش 125 صفحه
چکیده:
هدف از این پروژه مقایسه چهارطرح ضرب کننده RNS می باشد. بدین منظور با بهره گیری از پیاده سازی این چهار طرح با نرم افزار VHDL به مقایسه آنها میپردازیم. RNS یک روش نمایش اعداد است که در آن هر عدد به وسیله باقی ماندههای تقسیم آن بر مجموعه ای از اعداد دو به دو نسبت به هم اول نمایش داده
می شود. با کمک قضیه باقی مانده چینی، اثبات می شود که در RNS نمایش هر عدد منحصر به فرد می باشد برای ضرب در RNS نیاز به ضرب پیمانه ای خواهد بود. روشهای ضرب پیمانه ای برحسب اینکه کاهش به پیمانه، در کدام مرحله ضرب انجام گیرد. به دو دسته «کاهش در حین ضرب (RDM)» و «کاهش بعد از ضرب (RAM)» تقسیم می شوند. دو طرح اول این پروژه با تکنیک RAM و دو طرح دوم با تکنیک RDM کار میکنند.
مقدمه:
همانطور که می دانیم ضرب پیمانه ای در علم رمزنگاری نقش مهمی ایفا می کند. از جمله روشهای رمزنگاری که به ضرب کننده پیمانه ای سریع نیاز دارد، روش رمزنگاری RSA می باشد که در آن نیاز به توان رساندن اعداد بزرگ در پیمانه های بزرگ می باشد. معمولاً برای نمایش اعداد در این حالات از سیستم باقی مانده (RNS) استفاده می شود و ضرب (به عنوان هسته توان رسانی) در این سیستم به کار می رود.
در اینجا برای آشنایی بیشتر به توضیح سیستم عددی باقی مانده می پردازیم و به کاربردها و فواید آن اشاراتی خواهیم داشت.
فهرست مطالب:
مقدمه
سیستم عددی باقیمانده
قضیه باقی مانده های چینی
کاربردهای RNS
روشهای ضرب پیمانه ای
2-1 روش مونتگمری
2-2 بررسی اجمالی روشهای موجود پیاده سازی ضرب در RNS
2-3 نکاتی پیرامون چهار طرح مورد نظر
طرح اول
3-1 مقدمه
3-2 بررسی سوابق
3-3 الگوریتم
3-4 پیاده سازی سخت افزاری
3-5 محاسبه پیچیدگی مساحت و تأخیر طرح اول
طرح دوم
4-1 مقدمه
4-2 بررسی سوابق
4-3 الگوریتم
4-4 پیاده سازی سخت افزاری
4-5 محاسبه پیچیدگی مساحت و تأخیر طرح دوم
طرح سوم
5-1 تبدیل سیستم RNS (Residue Conversion)
5-2 پیاده سازی سخت افزاری
5-2-1 پیاده سازی تبدیل RNS
5-2-2 پیاده سازی بخش اصلی الگوریتم (الگوریتم مونتگمری با RNS )
5-3- محاسبه پیچیدگی مساحت و تأخیر طرح سوم
5-3-1 عناصر وابسته به ROM
5-3-2 عناصر ریاضی
5-3-3 تأخیر و مساحت تبدیل کننده RNS استاندارد
5-3-4 محاسبه مساحت و تأخیر تبدیل کننده RNS سریع
5-3-5 مساحت و تأخیر طرح سوم
5-4 نتایج پیاده سازی در طرح سوم
طرح چهارم
6-1 بیان مقاله در مورد سیستم RNS
6-2 بیان مقاله از ضرب پیمانه ای بدون تقسیم (روش مونتگمری)
6-3 بررسی صحت الگوریتم
6-4 روش تبدیل RNS
6-5 پیاده سازی سخت افزاری
6-5-1 تبدیل RNS ناقص
6-5-2 پیاده سازی بخش اصلی طرح چهارم (الگوریتم مونتگمری)
6-6 محاسبه پیچیدگی تأخیر و مساحت طرح چهارم
6-6-1 محاسبه تأخیر و مساحت تبدیل RNSناقص
6-6-2 محاسبه تأخیر و مساحت در طرح چهارم
6-7 نتایج شبیه سازی در طرج چهارم
مقایسه طرح ها وجمع بندی
7-1- مقایسه چهار طرح
7-2- جمع بندی
مراجع
ضمائم
الف – کدهای VHDL طرح اول
ب – کدهای VHDL طرح دوم
ج – کدهای VHDL طرح سوم
د – کدهای VHDL طرح چهارم
هـ – MOMA
منابع و مآخذ:
[1] D.E. knuth, the Art of Computer Programming Vol.2/Seminumerical Algorithms, Third Edition, 1998.
[2] P.L. Montgomery, “Modular Multiplication without trival division”, Mathematics of Computation, 44(170); 519-521, April 1985
[3] A.A. Hiasat, “New Efficient Structure for a Modular Multiplier for RNS”, IEEE Transaction on Computers, Vol 49,pp. 170-174 Feb 2000
[4] A.A. Hiasat, “RNS Arithmatic Multiplicr for Medium and Large Moduli”, IEEE transaction on Circuit and systems-11: Analog and digital Signal processing,” vol. 47, No.q, pp 931-940, sep 2000
[5] D.Pearson, “A parallel implementation of RSA”, Proceedings in the symposium on Computer, Arithmatic, pp 110, July 1996.
[6] K.C posch, R Posch, “Residue Number system: a key to parallelism in public key cryptography.” IEEE Transaction, Vol.32, no.2, pp:332-335, July 1992.
[7] G.A. Jullien, “Implementation of Multiplication, Modulo a Prime Number, with Application to Theoritic Transforms,” IEEE Transaction on Computers Vol.29,no.10,pp 899-905, oct 1980.
[8] M.soderstand and Cvernia, “A High speed low-cost modulo P, Multiplier with RNS Arithmatic Application”, Proc. IEEE, Vol 68, pp. 529-532, Apr. 1980
[9] D.Radhakrishan and Y.Yuan, “Novel Approches to the design of VLSI RNS Multipllier”, IEEE Transaction on Circuits and systems-II; Analog and digital signal processing. Vol 39 pp 52-57, Jan 1992.
[10] M Dugdale, “Residue Multipliers Using Factor Decomposition,” IEEE Transaction on Circuits and systems, II: Analog and Digital signal Processing, Vol 41, pp 623-627. Sept 1994.
[11] A.S. Ramnarayan, “Practicul Realization of mod p,p Prime Multipliers,” Electronic Letters. Vol. 16, pp 466-467, June 1980
[12] F.J. Taylor, “A VLSI Residue Arithmatic Multiplier.” IEEE Trans. Computers, Vol 341, no.6, pp.540-546, June 1982.
[13] A.A. Hiasat, “A memory-less mod (2n+1) Residue Multiplier,” Electronic Letters, Vol. 28, pp. 414-415, Jan 1991
[14] C.D, walter, “Systolic Modular Multiplier,” IEEE Trans computers, Vol. 42 no.3. pp. 375-378. Mar 1993
[15] E.Di Claudio, F Piazza and G.Orlandi, “Fast Combinational RNS multiplier for DSP Applications, “IEEE Iran. Computers, Vol.44 no.5, pp. 624-633. May 1985.
[16] 6.Alia, E.Martinelli, “A VLSI Modulo m multiplier,” IEEE Irans on Circuits and system II Analog and Digital Signal Processing, vol 42, pp 725-729, Nov. 1995.
[18] A wrzyszcz, D Milford and E.Duglas, “A new Approach to Fixed-Coeffient inner product over finite Rings,” IEEE Trans computer, Vol 47, no.7, pp 760-776, July 1998.
[19] Si Piestrak “Design of residue generators and Multioperand modular adders using carry-save Adders, “IEEE Trans. Comput. Vol. 43 pp. 6877. Jan 1994.
[20] M. Soderstrand, M. A. W. Jenkins, G. Jullien, and F. Taylor, Eds., Residue Number System Arithmetic: Modern Applications in Digital Signal Processing. Piscataway, NJ: IEEE Press, 1986.
[21] N. Szabo and R. Tanaka, Residue Arithmetic and Its Applications to Computer Technology. New York: McGraw Hill, 1967.
[22] A. S. Ramnarayan, “Practical realization of mod p,p prime multiplier” Electron. Lett., Vol. 16, pp. 466-467, June. 1980.
[23] M. Soderstrand and C. Vernia, “A high-speed low-cost modulo Pi multiplier with RNS arithmetic application,” Proc. IEEE, vol. 68, pp. 529-532, Apr. 1980.
[24] G. A. Jullien, “Implementation of multiplication, modulo a prime number, with applications to theoretic transforms,” IEEE Trans comput., Vol. C-29, pp. 899-905, Oct. 1980.
[25] F. J. Taylor, “ Large moduli multipliers for signal processing,” IEEE Trans. Circuits Syst., Vol. CAS-28, pp. 731-436, July 1981.
[26] F. J. Taylor, “A VLSI residue arithmetic multiplier,” IEEE Trans Comput., Vol. C-31, pp. 540-546, June 1982.
[27] F. J. Taylor and Huandg, “An autoscale residue multiplier,” IEEE Trans. Comput., Vol. C-31, pp. 321-325, Apr. 1982.
[28] A. Hiasat, “A memoryless mod residue multiplier,” Elecron. Lett., Vol. 28, pp. 414-415, Jan. 1991.
[29] M. Dugdale, “Residue multipliers using factored decomposition,” IEEE Trans. Circuits Syst. II, Vol, 41, pp. 623-627, Sept. 1994.
[30] A. Haisat, “Semi- Custom VLSI design for RNS multipliers using combinational logic approach,” in Proc. 3rd IEEE Int. Conf. Electronics. Circuits and Systems (ICECS’96), Vol. 2, Oct. 1996, pp. 935-938.
[31] D. Radhakrishnan and Y. Yuan, “Novel approaches to the design of VLSI RNS multiplier,” IEEE Trans. Circuits Syst. II, Vol. 39, pp. 52-57, Jan. 1992.
[32] Markus A. Hitz and Erich Kaltofen. Integer division in residue number systems. IEEE Transactions on Computers, 44(8): 983-989, August 1995.
[33]http://www.iis.ee.ethz.ch/zimmi/publication/comp-arith-otes.ps.gz
[34] P. SINHA, “Fast Parallel Algorithms for Binary Multiplication and Their Implementation on Systolic Architectures,” IEEE Transactions on Computers, Vol. 38, No.3, March 1989.
[35] K.C.Posch, R.Posch, “Modulo Reduction In Residue Number Systems,” IEEE Transactions on Parallel and distributed systems, Vol.6, No. 5, May 1995.
[36] R. Rivest, A. Shamir, and L. Adleman, “A method for obtaining digital signatures and public-key cryptosystems,” Commun. ACM, pp. 120-126, 1978.
[37] K. C. Posch and R. Posch, “Approaching encryption at ISDN speed using partial parallel modulus multiplication,” Microprocessing and Microprogramming. Amsterdam, The Netherlands: North-Holand, 1990, Vol. 29, pp. 177-184.
پروژه مقایسه چهار طرح ضرب کننده doc .RNS