From 1f37ade7b2f97d96855316248724d791eec28ad1 Mon Sep 17 00:00:00 2001 From: Brett Weiland Date: Fri, 12 Apr 2024 16:23:21 -0500 Subject: [PATCH] boutta paste spellchecked ver --- report/report.aux | 10 +++---- report/report.log | 17 ++++++++---- report/report.pdf | Bin 233976 -> 232746 bytes report/report.tex | 68 ++++++++++++++++++++++++---------------------- 4 files changed, 51 insertions(+), 44 deletions(-) diff --git a/report/report.aux b/report/report.aux index 452923f..ad7283b 100644 --- a/report/report.aux +++ b/report/report.aux @@ -1,12 +1,12 @@ \relax -\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Add and Subtract operations of various Operand Lengths}}{4}{}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {1}{\ignorespaces Iteration count of various operand lengths.}}{4}{}\protected@file@percent } \providecommand*\caption@xref[2]{\@setref\relax\@undefined{#1}} \newlabel{igraph}{{1}{4}{}{}{}} -\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Add and Subtract operations of various Operand Lengths}}{5}{}\protected@file@percent } -\newlabel{pgraph}{{2}{5}{}{}{}} -\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Number of additions and subtractions for various inputs}}{6}{}\protected@file@percent } +\@writefile{lof}{\contentsline {figure}{\numberline {2}{\ignorespaces Add and Subtract operations of various operand lengths.}}{4}{}\protected@file@percent } +\newlabel{pgraph}{{2}{4}{}{}{}} +\@writefile{lot}{\contentsline {table}{\numberline {1}{\ignorespaces Number of additions and subtractions for various inputs.}}{6}{}\protected@file@percent } \newlabel{speed_table}{{1}{6}{}{}{}} -\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Results of multiplication according to simulated multipliers}}{6}{}\protected@file@percent } +\@writefile{lot}{\contentsline {table}{\numberline {2}{\ignorespaces Results of multiplication according to simulated multipliers.}}{6}{}\protected@file@percent } \newlabel{result_table}{{2}{6}{}{}{}} \@writefile{lol}{\contentsline {lstlisting}{../booth\textunderscore multiplier.py}{7}{}\protected@file@percent } \gdef \LT@i {\LT@entry diff --git a/report/report.log b/report/report.log index c65e108..2484a5d 100644 --- a/report/report.log +++ b/report/report.log @@ -1,4 +1,4 @@ -This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/Arch Linux) (preloaded format=pdflatex 2024.4.11) 12 APR 2024 15:40 +This is pdfTeX, Version 3.141592653-2.6-1.40.26 (TeX Live 2024/Arch Linux) (preloaded format=pdflatex 2024.4.11) 12 APR 2024 16:13 entering extended mode restricted \write18 enabled. %&-line parsing enabled. @@ -624,17 +624,22 @@ LaTeX Font Info: External font `cmex10' loaded for size {/var/lib/texmf/fonts/map/pdftex/updmap/pdftex.map}{/usr/share/texmf-dist/fonts /enc/dvips/base/8r.enc}{/usr/share/texmf-dist/fonts/enc/dvips/tex-gyre/q-rm.enc }] -Underfull \hbox (badness 10000) in paragraph at lines 62--63 +Underfull \hbox (badness 10000) in paragraph at lines 92--93 [] [2] (./iterations.pgf LaTeX Font Info: External font `cmex10' loaded for size (Font) <5> on input line 90. -) [3] (./performance.pgf) [4] [5] (./speed_table.tex) -(./result_table.tex) [6] (/usr/share/texmf-dist/tex/latex/listings/lstlang1.sty +) + +LaTeX Warning: `h' float specifier changed to `ht'. + +(./performance.pgf) [3] [4] [5] (./speed_table.tex) (./result_table.tex) +[6] (/usr/share/texmf-dist/tex/latex/listings/lstlang1.sty File: lstlang1.sty 2024/02/21 1.10 listings language file -) (../booth_multiplier.py [7] [8] [9]) (./debug_table.tex +) +(../booth_multiplier.py [7] [8] [9]) (./debug_table.tex Overfull \hbox (47.28491pt too wide) in alignment at lines 1--5 [] [] [] [] [] [] [] [] [] @@ -666,7 +671,7 @@ tt12.pfb> -Output written on report.pdf (11 pages, 233976 bytes). +Output written on report.pdf (11 pages, 232746 bytes). PDF statistics: 90 PDF objects out of 1000 (max. 8388607) 58 compressed objects within 1 object stream diff --git a/report/report.pdf b/report/report.pdf index f0ce6008b3dd0cd15729cb1b934b8418ca3bc3a5..99444656233045409f2d8f92dbaee4c50824ad8a 100644 GIT binary patch delta 46057 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�?(;=6 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 FMhYRGyBh!i delta 47370 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 diff --git a/report/report.tex b/report/report.tex index 23fc494..5699bab 100644 --- a/report/report.tex +++ b/report/report.tex @@ -40,12 +40,12 @@ Analyzing Performance of Booth’s Algorithm and Modified Booth’s Algorithm} \begin{document} \maketitle \begin{abstract} -In this paper, the performance of Booth’s Algorithm is compared to modified Booth's Algorithm. Each multiplier is simulated in Python, and performance is observed by counting the number of add and subtract operations for inputs of various lengths. Results are analyzed and discussed to highlight the potential tradeoffs one should consider when deciding what multiplier is to be used. +In this paper, the performance of Booth’s algorithm is compared to modified Booth's algorithm. Each multiplier is simulated in Python. The multipliers are benchmarked by counting the number of add and subtract operations for inputs of various lengths. Results are analyzed and discussed to highlight the potential tradeoffs one should consider when deciding what multiplier is to be used. \end{abstract} \section*{Introduction} Multiplication is among the most time consuming mathematical operations for processors. In many applications, the time it takes to multiply dramatically influences the speed of the program. Applications of digital signal processing (such as audio modification and image processing) require constant multiply and accumulate operations for functions such as fast fourier transformations and convolutions. Other applications are heavily dependent on multiplying large matrices, such as machine learning, 3D graphics and data analysis. In such scenarios, the speed of multiplication is vital. Consequently, most modern processors implement hardware multiplication. However, not all hardware multiplication schemes are equal; there is often a stark contrast between performance and hardware complexity. To further complicate things, multiplication circuits perform differently depending on what numbers are being multiplied. \section*{Algorithm Description} -Booth's algorithim computes the product of two signed numbers in two's compliment format. To avoid overflow, the result is placed into a register two times the size of the operands (or two registers the size of a single operand). Additionally, the algorithim must work with a space that is exended one bit more then the result. For the purpose of brevity, the result register and extra bit will be refered to as the workspace, as the algorithim uses this space for its computations. First, the multiplier is placed into the workspace and shifted left by 1. From there, the multiplier is used to either add or subtract from the upper half of the workspace. The specific action is dependent on the last two bits of the workspace. +Booth's algorithim computes the product of two signed numbers in two's compliment format. To avoid overflow, the result is placed into a register two times the size of the operands (or two registers the size of a single operand). Additionally, the algorithim must work with a space that is exended one bit more then the result. For the purpose of brevity, the result register and extra bit will be refered to as the workspace, as the algorithim uses this space for its computations. First, the multiplier is placed into the workspace and shifted left by 1. From there, the multiplicand is used to either add or subtract from the upper half of the workspace. The specific action is dependent on the last two bits of the workspace. \begin{table}[H] \centering \begin{tabular}{lll} @@ -59,20 +59,8 @@ Bit 1 & Bit 0 & Action \\ \bottomrule \end{tabular} \end{table} -After all iterations are complete, the result is arithmaticlly shifted once to the left, and the process repeats for the number of bits in an operand. The pseudo code for this algorithim is below:\\ - \begin{verbatim} -Booth: - result = multiplier << 1 - loop (operand length) times: - if last two bits are 01: - result(upper half) += multiplicand - if last two bits are 10: - result(upper half) += twos_comp(multiplicand) - remove extra bits from result - arithmatic shift result right -result >> 1 - \end{verbatim} - +After all iterations are complete, the result is arithmaticlly shifted once to the right, and the process repeats for the number of bits in an operand. +\par Modified booth's algorithim functions similar to Booth's algorithim, but checks the last \textit{three} bits instead. As such, there are a larger selection of actions for each iteration: \begin{table}[H] \centering @@ -91,8 +79,29 @@ Bit 2 & Bit 1 & Bit 0 & Action \\ \bottomrule \end{tabular} \end{table} -Because some operations require doubling the multiplicand, an extra bit is added to the most significant side of the workspace to avoid overflow. After each iteration, the result is arithmaticlly shifted right twice. The number of iterations is only half of the length of the operands. After all iterations, the workspace is shifted right once, and the second most significant bit is set to the first most significant bit as the result register does not include the extra bit. -Pseudo code for this algorithim is listed below: +Because some operations require doubling the multiplicand, an additional extra bit is added to the most significant side of the workspace to avoid overflow. After each iteration, the result is arithmaticlly shifted right twice. The number of iterations is only half of the length of the operands. After all iterations, the workspace is shifted right once, and the second most significant bit is set to the first most significant bit as the result register does not include the extra bit. + +\par +\section*{Simulation Implimentation} +Both algorithims were simulated in Python in attempts to utalize its high level nature for rapid development. The table for Booth's algorithim was preformed with a simple if-then, while a switch case was used in modified booth's algorithim. Simple integers were used to represent registers. +\par +One objective of this paper is to analyze and compare the peformance of these two algorithms for various operand lengths. As such, the length of operands had to be constantly accounted for. Aritmatic bitwise operations, including finding two's compliment, were all implimented using functions that took length as an input. Further more, extra bits were cleared after each iteration. +\par +To track down issues and test the validity of the multipliers, a debug function was written. To allow Python to natively work with the operands, each value is calculated from its two's compliment format. The converted numbers are then multiplied, and the result is used to verify both Booth's Algorithim and Modified Booth's Algorithim. To ensure that the debugging function itself doesn't malfunction, all converted operands and expected results are put into a single large table for checking. The exported version of this table can be seen on the last page in table \ref{debug_table}. % TODO + +The pseudo code below illustrates how each algorithim was implimented in software. For the full code, refer to the listing at the end of the document.\\ +\begin{verbatim} +Booth: + result = multiplier << 1 + loop (operand length) times: + if last two bits are 01: + result(upper half) += multiplicand + if last two bits are 10: + result(upper half) += twos_comp(multiplicand) + remove extra bits from result + arithmatic shift result right +result >> 1 +\end{verbatim} \begin{verbatim} Modified booth: multiplicand(MSB) = multiplicand(second MSB) @@ -113,32 +122,25 @@ Modified booth: result(MSB) = 0 \end{verbatim} -\par -\section*{Simulation Implimentation} -Both algorithims were simulated in Python in attempts to utalize its high level nature for rapid development. The table for Booth's algorithim was preformed with a simple if-then loop, while a switch case was used in modified booth's algorithim. Simple integers were used to represent registers. -\par -One objective of this paper is to analyze and compare the peformance of these two algorithms for various operand lengths. As such, the length of operands had to be constantly accounted for. Aritmatic bitwise operations, including finding two's compliment, were all implimented using functions that took length as an input. Further more, extra bits were cleared after each iteration. -\par -To track down issues and test the validity of the multipliers, a debug function was written. To allow Python to natively work with the operands, each value is calculated from its two's compliment format. The converted numbers are then multiplied, and the result is compared to both Booth's Algorithim and Modified Booth's Algorithim. To ensure that the debugging function itself doesn't malfunction, all converted operands and expected results are put into a single large table for checking. The exported version of this table can be seen on the last page, in table \ref{debug_table}. % TODO \section*{Analysis} -Modified Booth's algorithim only requires half the iterations as Booth's algorithim. As such, it can be expected that the benifit of modified Booth's algorithim increases two fold with bit length. This can be shown by comparing the two curves in figure \ref{igraph}. -\begin{figure}[H] +Modified Booth's algorithim only requires half the iterations of Booth's algorithim. As such, it can be expected that the benifit of modified Booth's algorithim increases two fold with bit length. This can be shown by comparing the two curves in figure \ref{igraph}. +\begin{figure}[h] \centering \input{iterations.pgf}\\ - \captionof{figure}{Add and Subtract operations of various Operand Lengths} + \captionof{figure}{Iteration count of various operand lengths.} \label{igraph} \end{figure} \par -Despite this, the nature of both algorithims dictate that modified booth's algorithim is not explicitly faster. Iteration count translates to the \textit{maxiumum} number of additions and subtractions. Figure \ref{pgraph} shows the performance of the two algorithims given different input lengths, while table x shows the actual data made to generate the plot. There are some interesting things to note. When operands contain repeating zeros or ones, both operations preform similarly, as only shifting is required. Operands containing entirely ones or zeros result in idential preformance. On the contrary, alternating bits within operands demonstrate where the two algorithims differ, as almost no bits can be skipped over. Operands made entirely of alternating bits result in the maximum performance diffrence, in which modified booth's algorithim is potentially two times faster. +Despite this, the nature of both algorithims dictate that modified booth's algorithim is not explicitly faster. Iteration count translates to the \textit{maxiumum} number of additions and subtractions. Figure \ref{pgraph} shows the performance of the two algorithims given different input lengths, while table \ref{speed_table} shows the actual data used to generate the plot. There are some interesting things to note. When operands contain repeating zeros or ones, both operations preform similarly, as only shifting is required. Operands containing entirely ones or zeros result in idential preformance. On the contrary, alternating bits within operands demonstrate where the two algorithims differ, as almost no bits can be skipped over. Operands made entirely of alternating bits result in the maximum performance diffrence, in which modified booth's algorithim is up to two times faster. \begin{figure}[H] \centering \input{performance.pgf}\\ - \captionof{figure}{Add and Subtract operations of various Operand Lengths} + \captionof{figure}{Add and Subtract operations of various operand lengths.} \label{pgraph} \end{figure} \par -All of this needs to be considered when designing an ALU. Modified booth's algorithim may improve speed, but requires substantially more hardware to impliment. One must consider if die space is to be allocated to optimize multiplication. In many applications, fast multiplication is unnessesary; many early single-chip processors and microcontrollers didn't impliment multiplication, as they were intended for simple embeded applications. +All of this needs to be considered when deciding between the two algorithims. Modified booth's algorithim may improve speed, but requires substantially more hardware to impliment. One must consider if it's worth the cost to optimize multiplication. In many applications, fast multiplication is unnessesary; many early single-chip processors and microcontrollers didn't impliment multiplication, as they were intended for simple embeded applications. \section*{Conclusion} Hardware multipliers can help accellerate applications in which multiplication is frequent. When implimenting hardware multipliers, it's important to consider the advantages and disadvantages of various multiplier schemes. Modified Booth's algorithim gives diminishing returns for smaller operands and requires significantly more logic. In applications that depend heavily on fast multiplication of large numbers, modified booth's algorithim is optimal. % mba generally but not always faster @@ -154,12 +156,12 @@ Hardware multipliers can help accellerate applications in which multiplication i \begin{figure}[h] \centering \input{speed_table.tex} - \captionof{table}{Number of additions and subtractions for various inputs} + \captionof{table}{Number of additions and subtractions for various inputs.} \label{speed_table} \end{figure} \begin{figure}[H] \input{result_table.tex} - \captionof{table}{Results of multiplication according to simulated multipliers} + \captionof{table}{Results of multiplication according to simulated multipliers.} \label{result_table} \end{figure}