9930427
An algorithm for converting floating-point computations to fixed-point in MATLAB based FPGA design
Most practical FPGA designs of digital signal processing applications are limited to fixed-point arithmetic owing to the cost and complexiry of floating-point hardware. While mapping DSP applications onto FPGAs, a DSP algorithm designer, who often develops his applications in MATLAB, must determine the dynamic range and desired precision of input, intermediate and output signals in a design implementation to ensure that the algorithm fidelity criteria are met. The first step in a flow to map MATLAB applications into hardware is the conversion of the floating-point MATLAB algorithm into a fixed-point version. This paper describes an approach to automate this conversion, for mapping to FPGAs by profiling the expected inputs to estimate errors. Our algorithm attempts to minimize the hardware resources while constraining the quantization error within a specified limit
6457662
ConvexFit: an optimal minimum-error convex fitting and smoothing algorithm with application to gate-sizing
Convex optimization has gained popularity due to its capability to reach global optimum in a reasonable amount of time. Convexity is often ensured by fitting the table data into analytically convex forms such as posynomials. However, fitting the look-up tables into the posynomial forms with minimum error itself may not be a convex optimization problem and hence excessive fitting errors may be introduced. In this paper, we propose to directly adjust the look-up table values into a numerically convex look-up table without explicit analytical form. We show that numerically "convexifying" the table data with minimum perturbation can be formulated as a convex semidefinite optimization problem and hence optimality can be reached in polynomial time. Without an explicit form limitation, we find that the fitting error is significantly reduced while the convexity is still ensured. As a result, convex optimization algorithms can still be applied. Furthermore, we also develop a "smoothing" algorithm to make the table data smooth and convex to facilitate the optimization process. Results from extensive experiments on industrial cell libraries demonstrate that our method reduces 30/spl times/ fitting error over a well-developed posynomial fitting algorithm. Its application to circuit tuning is also presented.
26846276
Hierarchical representation of digitized curves through dominant point detection
Hierarchical data structures play a key role in representation of spatial data. This paper proposes an algorithm for constructing hierarchical representations of digitized curves based on the dominant points of the curve. The comparison of the proposed scheme with the other hierarchical representation schemes viz. Arc Tree and Strip Tree reveals that the proposed algorithm is generally better than the Arc Tree and compares well with the Strip Tree scheme.
411400
Parity Problems in Planar Graphs
We consider the problem of counting the number of spanning trees in planar graphs. We prove tight bounds on the complexity of the problem, both in general and especially in the modular setting. We exhibit the problem to be complete for Logspace when the modulus is 2k, for constant k. On the other hand, we show that for any other modulus and in the non-modular case, our problem is as hard in the planar case as for the case of arbitrary graphs. This completely settles the question regarding the complexity of modular computation of the number of spanning trees in planar graphs. The techniques used rely heavily on algebraic-topology. In the spirit of counting problems modulo 2k, we also exhibit a highly parallel oplusL algorithm for finding the value of a Permanent modulo 2k. Previously, the best known result in this direction was Valiant's result that this problem lies in P.
1480265
Evaluation of cluster interconnects for a distributed shared memory
Clusters of Symmetrical Multiprocessors (SMPs) have recently become popular as low-cost, high-performance computing solutions. The type of interconnection hardware used in these clusters can become a deciding factor in their overall performance. This paper evaluates the performance of three different communication systems, 10 Mbps Ethernet, 100 Mbps FastEthernet and 155 Mbps ATM, using a multithreaded Distributed Shared Memory system, Strings. The raw performance of each network is first measured using netperf. Ten different applications are then used for performance evaluation, including programs from the SPLASH-2 benchmarks, a medical computing application, and some computational kernels. It is found that half of the programs tested are not significantly affected by changes in the bandwidth. Though the ATM network provides the highest overall bandwidth, the remaining applications show that the increase in latency compared to FastEthernet prevents any performance improvement. On the other hand, applications that require only moderately high bandwidths perform substantially better with FastEthernet.
14665111
Oblivious Symmetric Alternation
We introduce a new class $\rm {O}^p_2$ as a subclass of the symmetric alternation class $\rm {S}^p_2$. An $\rm {O}^p_2$ proof system has the flavor of an $\rm {S}^p_2$ proof system, but it is more restrictive in nature. In an $\rm {S}^p_2$ proof system, we have two competing provers and a verifier such that for any input, the honest prover has an irrefutable certificate. In an $\rm {O}^p_2$ proof system, we require that the irrefutable certificates depend only on the length of the input, not on the input itself. In other words, the irrefutable proofs are oblivious of the input. For this reason, we call the new class oblivious symmetric alternation. While this might seem slightly contrived, it turns out that this class helps us improve some existing results. For instance, we show that if NP⊂P/poly then $\rm PH = {O}^p_2$, whereas the best known collapse under the same hypothesis was $\rm PH = {S}^p_2$. 
 
We also define classes $\rm Y{O}^p_2$ and $\rm N{O}^p_2$, bearing relations to $\rm {O}^p_2$ as NP and coNP are to P, and show that these along with $\rm {O}^p_2$ form a hierarchy, similar to the polynomial hierarchy. We investigate other inclusions involving these classes and strengthen some known results. For example, we show that $\rm MA \subseteq N{O}^p_2$ which sharpens the known result $\rm MA \subseteq {S}^p_2$ [16]. Another example is our result that $\rm AM \subseteq O_2 \cdot NP \subseteq {\prod}^p_2$, which is an improved upper bound on AM. Finally, we also prove better collapses for the 2-queries problem as discussed by [12,1,7]. We prove that $\rm P^{NP[1]} = P^{NP[2]} \Longrightarrow PH = {NO}^p_2 \cap Y{O}^p_2$.
5422021
Fast and Robust Projective Matching for Fingerprints Using Geometric Hashing
Fingerprint matching is the most important module in automatic person recognition using fingerprints. We model the nonlinear distortions and noise obtained during the fingerprint capture process as transformations in the projective domain. Matching of the fingerprints involves computing the homography matrix for the projective transformation, mapping of the minutia points by this homography and finally computing the points that match each other within a pre-determined threshold. We perform a fast match using a Geometric Hashing-based algorithm which matches the points in polynomial time. Preliminary experiments with a sample representative database show promising results.
9807325
A Fast Algorithm for Point Labeling Problem
In the map labeling problem, we are given a set P = {p1, p2, . . . , pn} of point sites distributed on a 2D map. The label of a point pi is an axis-parallel rectangle of specified size. The objective is to label maximum number of points on the map so that the placed labels are mutually non-overlapping. Here, we investigate a special class of map labeling problem where (i) the height of the label of each point is the same but its length may be different from the others, (ii) the label of a point pi touches the point at one of its four corners and (iii) it does not obscure any other point in P . We describe an efficient heuristic algorithm for this problem which runs in O(n √ n) time in the worst case. We run our algorithm as well as the algorithm proposed in [14] on the available benchmarks [13]. The results produced by our algorithm is same as that of [14] in most of the cases, and is one less in few cases. But the time taken by our algorithm is much less than [14].