Berger code (BC) is an optimal separable code which can detect all single stuck-at and unidirectional faults. The traditional BC checker is not totally self-checking (TSC) when k = 2r-1, where k is the number of information bits in a code word, and r is the number of check bits. The case in which k = 2r-1, however, is important and practical since information words in most digital systems are in the form of a power of 2. This problem was solved recently by Rao et al., who proposed a TSC BC checker based on the concept of a generalized BC partition technique. We extend their work and propose two TSC BC checkers for k = 2r-1 by modifying the conventional BC checker. The first design adds to it a pair of 1/2-code inputs and a two-rail-code checker. The second method includes a periodic input and produces a periodic output. Compared with the results of Rao et al., our checkers require less hardare overhead and check time.