Abstract
We propose the multiple LUT cascade as a means to configure an n-input LPM (Longest Prefix Match) address generator commonly used in routers to determine the output port given an address. The LPM address generator accepts n-bit addresses which it matches against k stored prefixes. We implement our design on a Xilinx Spartan-3 FPGA for n = 32 and k = 504 ~511. Also, we compare our design to a Xilinx proprietary TCAM (ternary content-addressable memory) design and to another design we propose as a likely solution to this problem. Our best multiple LUT cascade implementation has 5.20 times more throughput, 31.71 times more throughput/area and is 2.89 times more efficient in terms of area-delay product than Xilinx’s proprietary design. Furthermore, its area is only 19% of Xilinx’s design.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Micron Technology Inc.: Harmony TCAM 1Mb and 2Mb, Datasheet (January 2003)
Gupta, P., Lin, S., McKeown, N.: Routing lookups in hardware at memory access speeds. In: Proc. IEEE INFOCOM, pp. 1241–1247 (1998)
Dharmapurikar, S., Krishnamurthy, P., Taylor, D.: Longest prefix matching using Bloom filters. In: Proc. ACM SIGCOMM, pp. 201–212 (2003)
Sasao, T., Butler, J. T.: Implementation of multiple-valued CAM functions by LUT cascades. In: Proc. IEEE International Symposium on Multiple-Valued Logic (accepted for publication) (May 2006)
Shafai, F., Schultz, K.J., Gibson, G.F.R., Bluschke, A.G., Somppi, D.E.: Fully parallel 30-MHz, 2.5-Mb CAM. IEEE Journal of Solid-State Circuits 33(11), 1690–1696 (1998)
Ashenhurst, R.L.: The decomposition of switching functions. In: Proc. International Symposium on the Theory of Switching, pp. 74–116 (1957)
Sasao, T.: Switching Theory for Logic Synthesis. Kluwer Academic Publishers, Dordrecht (1999)
Sasao, T., Matsuura, M., Iguchi, Y.: A cascade realization of multiple-output function for reconfigurable hardware. In: Proc. International Workshop on Logic and Synthesis, pp. 225–230 (2001)
Sasao, T., Matsuura, M.: A method to decompose multiple-output logic functions. In: Proc. 41st Design Automation Conference, pp. 428–433 (2004)
http://www.xilinx.com/products/design_resources/design_tool/grouping/design_entry.htm
Xilinx, Inc.: Spartan-3 FPGA family: Complete data sheet, DS099, August 19 (2005)
Sproull, T., Brebner, G., Neely, C.: Mutable codesign for embedded protocol processing. In: Proc. IEEE 15th International Conference on Field Programmable Logic and Applications, pp. 51–56 (2005)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2006 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Qin, H., Sasao, T., Butler, J.T. (2006). Implementation of LPM Address Generators on FPGAs. In: Bertels, K., Cardoso, J.M.P., Vassiliadis, S. (eds) Reconfigurable Computing: Architectures and Applications. ARC 2006. Lecture Notes in Computer Science, vol 3985. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11802839_24
Download citation
DOI: https://doi.org/10.1007/11802839_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-36708-6
Online ISBN: 978-3-540-36863-2
eBook Packages: Computer ScienceComputer Science (R0)